Objet #<HTMLDivElement> comme objet jQuery
Comment puis-je obtenir un #<HTMLDivElement>
comme un objet jQuery?
J'ai besoin de faire le suivant: j'ai une liste de div avec le contenu de classe. J'ai donc itérer jusqu'à ce que je trouve l'une avec la classe supplémentaire: "test"
voici mon code:
$.each( $(".contents"), function( key, value ) {
if (value.hasClass("test"))
{
alert("got it");
}
});
Je suis l'exception: Uncaught TypeError: Object #<HTMLDivElement> has no method 'hasClass'
Il suffit de passer la jQuery constructeur.
Pourquoi n'utilisez-vous pas certains sélecteur comme
Pourquoi n'utilisez-vous pas certains sélecteur comme
$(".contents.test").each(alert.bind(window, "got it"))
? Ou $(".contents").filter(".test")
?OriginalL'auteur gurehbgui | 2013-05-06
Vous devez vous connecter pour publier un commentaire.
La
each()
fonction vous donneDOM
objet et vous devez la convertir enjQuery
objet. Vous pouvez passervalue
à$
fonction jQuery pour le convertir en objet jQuery.Vous n'avez pas besoin de parcourir chacun des et à le simplifier comme
Raison pour voter?
Merci, vous êtes les bienvenus @gurehbgui.
Merci pour les précisions 🙂
OriginalL'auteur Adil
Pourquoi ne pas faire plus simple:
Ici jQuery va sélectionner l'élément qui a à la fois
"contents"
et"test"
classes ensemble.DÉMO: http://jsfiddle.net/xfErG/
Et alors? Le faire avec
$(".contents." + myClassName)
.OriginalL'auteur VisioN
La principale fonction jQuery peut accepter un Élément du DOM comme argument.
Les deux lignes de code suivantes ont le même résultat:
OriginalL'auteur Quentin