jquery si les enfants a plus de 1 élément div
Comment est-il possible d'obtenir le nombre de divs, qui sont un élément li.
Voici mon code mais il ne fonctionne pas. (Ne fonctionne pas moyen chaque img obtient la classe, aussi quand il est à seulement 1 div à l'intérieur de la li.)
if($('.lookbook ul li').find('div').length > 1){
$('.lookbook ul li img').addClass('lbcursor');
}
voici ma structure html:
<div class="lookbook>
<ul>
<li>
<div><img/></div>
<div></div>
</li>
<li>
<div><img/></div>
<div></div>
</li>
<li>
<div></img></div>
</li>
</ul>
</div>
la troisième img ne devrait pas avoir de la classe.
je veux le nombre des divs dans l'élément li et si il y a plus de 1 divs il faut ajouter la classe .lbcursor à l'img.
j'ai trouvé un similaire réponse ici : jquery: si les enfants atteints de classe spécifique? mais il ne fonctionne pas
ah j'ai juste reconnu, que la si la clause est correct. le problème, c'est sur les éléments auxquels j'ajoute la classe.
j'ai édité ma question. oui, je suis à la recherche de descendants directs.
Mettre un exemple de code sur jsFiddle. Ne peux pas le voir la structure HTML.
OriginalL'auteur Timotheus Triebl | 2013-09-26
Vous devez vous connecter pour publier un commentaire.
Vous avez besoin pour parcourir en boucle, et de la cible cet élément.
Violon
Vous pouvez également écrire ce que:
OriginalL'auteur PSL
Propre et simple à l'aide de la :a() et la :nth-of-type() sélecteurs.
jsFiddle Démo
:nth-of-type()
sélecteur, cela ne peut fonctionner que si lediv
les éléments sont les enfants directs d'un élément (comme on le voit dans votre question).Je l'ai testé sur IE7 et il fonctionne. jQuery (1.x.x) sait comment traiter les anciens navigateurs lors de la sélection des éléments.
aah cool et u eu mon +1 de toute façon...
d'accord, cette réponse a été la plus élégante ici +1
OriginalL'auteur Itay
Peut-être à l'aide de chacun avec ce contexte, de sorte que vous pouvez le faire spécifiques à chaque élément:
[MODIFIER]
comme l'a noté
devrait être
la même et bonne réponse a déjà été donnée. merci quand même.
Comme zoranc dit, ces deux réponses ne sont pas les mêmes. Cette réponse ne sera tout simplement pas de travail.
ah, c'est exact. ce serait le même problème que j'avais avant.
OriginalL'auteur zoranc
La condition dans votre code est bien, mais à l'intérieur de la si-vous bloquer l'accès de toutes les images à ajouter la classe CSS.
Je pense que votre code devrait ressembler à ceci:
(refactorings à faire).
L'esprit de l'appel supplémentaire
find()
dans le bloc if.OriginalL'auteur paulroho