我很难理解为什么某个特定的选择器不适合我。诚然,我是一个 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 执行此操作的正确方法。