J'ai de la difficulté à comprendre pourquoi un sélecteur particulier ne fonctionne pas pour moi. Certes, je suis un peu un débutant JQuery.Problèmes avec les sélecteurs JQuery et "est"
Cette correctement sélectionne la première div.editbox sur la page et les couleurs en jaune:
$('div.editbox:first').css("background-color","yellow");
Cependant, cette construction fait if ... is
la frontière apparaît en surbrillance pour chaque boîte comme il est moucheté-over .
$('div.editbox').bind('mouseover', function(e) {
if ($(this).is('div.editbox:first')) {$(this).css("border", "1px solid red");}
});
J'ai essayé des variantes telles que '.editbox: premier', '.editbox div: first', etc.
Essentiellement, je veux être en mesure de tester de manière fiable que ce soit la première ou dernier élément de avec le nom de la classe.
Merci!
Edit: voici le code HTML J'utilise:
<body>
<div class="container">
<p></p>
<div class="editbox" id="box1">Foo</div>
<div class="editbox" id="box2">Bar</div>
<div class="editbox" id="box3">Baz</div>
<div class="responsebox" id="rbox"></div>
</div>
</body>
Ceci est juste une preuve de concept Page; la page réelle sera bien sûr beaucoup plus complexe. Encore une fois: ce que je veux est de détecter de manière fiable si je suis dans le premier ou le dernier "div.editbox". Une solution est je:
$('div.editbox:last').addClass("lasteditbox");
pour tester ensuite if ($(this).is(".lasteditbox"))
qui fonctionne, mais il semble maladroit et je suis en train d'apprendre la bonne façon de le faire avec JQuery.
si vous voulez l'événement mouseover ne binded à la première? – TStamper