我想编写一个选择器,它定位第一个没有特定类的元素。
<ul>
<li class="someClass">item 1</li>
<li>item 2</li> <-- I want to select this
<li class="someClass">item 3</li>
<li>item 4</li>
</ul>
我知道如何选择没有“someClass”的所有元素:
$('li not:(.someClass)').dostuff();
但我不知道如何只选择没有“someClass”的第一个元素。
任何人都知道如何做到这一点?
答案 0 :(得分:5)
$('li:not(.someClass):first')
这是一个有效的演示:http://jsbin.com/arosa
答案 1 :(得分:1)
请参阅http://docs.jquery.com/Core/eq
$('li not:(.someClass)').eq(0).dostuff();
但正如其所指出的那样
$('li:not(.someClass)').eq(0).dostuff();
无论eq(0)
选择第一个元素
答案 2 :(得分:1)
你只有一个拼写错误,语法为:not()
:
$('li:not(.someClass)').eq(0)
答案 3 :(得分:1)
试试这个:
alert($('li:not(li.someClass)').eq(0).html());
答案 4 :(得分:0)
尝试
$('li first-child not:(.someClass)').dostuff()