J'essaye d'obtenir le span enfant qui a une classe = 4. Voici un exemple d'élément:
<div id="test">
<span class="one"></span>
<span class="two"></span>
<span class="three"></span>
<span class="four"></span>
</div>
Les outils dont je dispose sont JS et YUI2. Je peux faire quelque chose comme ça:
doc = document.getElementById('test');
notes = doc.getElementsByClassName('four');
//or
doc = YAHOO.util.Dom.get('#test');
notes = doc.getElementsByClassName('four');
Ceux-ci ne fonctionnent pas dans IE. J'obtiens une erreur indiquant que l'objet (doc) ne prend pas en charge cette méthode ou propriété (getElementsByClassName). J'ai essayé quelques exemples d'implémentations multi-navigateurs de getElementsByClassName mais je n'ai pas pu les faire fonctionner et j'ai toujours cette erreur.
Je pense que ce dont j'ai besoin est un getElementsByClassName de navigateur croisé ou je dois utiliser doc.getElementsByTagName ('span') et faire une boucle jusqu'à ce que je trouve la classe 4. Je ne sais pas comment faire cela cependant.
querySelectorAll
est pris en charge par IE 8+ alors qu'il getElementsByClassName
n'est pris en charge que par IE 9+. Si vous pouvez abandonner IE 7, vous pouvez l'utiliser en toute sécurité querySelectorAll('.4')
. Au fait, 4
est un nom de classe invalide.
document.querySelectorAll
est DOM et n'a rien à voir avec YUI