特定のセレクターが機能しない理由がわかりません。確かに、私は少し JQuery 初心者です。
これにより、ページの最初のdiv.editboxが正しく選択され、黄色になります。
$('div.editbox:first').css("background-color","yellow");
ただし、この構成では、マウスが置かれたときに各ボックスif ... is
の強調表示された境界線が表示されます。
$('div.editbox').bind('mouseover', function(e) {
if ($(this).is('div.editbox:first')) {$(this).css("border", "1px solid red");}
});
「.editbox :first」、「.editbox div:first」などのバリエーションを試しました。
基本的に、これが の最初の要素か最後の要素かをクラス名で確実にテストできるようにしたいと考えています。
ありがとう!
編集:私が使用しているHTMLは次のとおりです。
<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>
これは単なる概念実証ページです。もちろん、実際のページはもっと複雑になります。繰り返しますが、私が望むのは、最初または最後の「div.editbox」にいるかどうかを確実に検出することです。私が使用した回避策は次のとおりです。
$('div.editbox:last').addClass("lasteditbox");
次に、どれが機能するかをテストしif ($(this).is(".lasteditbox"))
ますが、不器用に思えます.JQueryでこれを行う適切な方法を学ぼうとしています.