Tester si une propriété existe
Bonjour,
J'ai voulu écrire une fonction qui recherche la balise "br" (ou "p"...) suivant l'objet courant. [Le code ci-dessous a le comportement attendu].
Voici ce que j'ai écrit :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
|
function RechercheSuivantTag(obj, strTag) {
strTag=' '+strTag.toLowerCase()+' ' ;
do
{
try{
objTag=' '+obj.tagName.toLowerCase()+' ' ;
}
catch(err){
objTag=' undefined ' ;
}
test=(strTag.indexOf(objTag)==-1 && obj.nextSibling !=null) ;
if(test) obj=obj.nextSibling ;
}
while(test) ;
return obj ;
} |
Certains nœuds ne possèdent pas la propriété tagName.
Je trouve que la solution try... catch n'est pas élégante, votre avis ?
A-t-on une autre solution pour tester si la propriété tagName est définie plutôt que de provoquer une erreur ?
Pierre