我正在编写一个骨干应用程序,并使用内置的事件处理,它使用jquery选择器。
我想编写一个选择器,它将选择除.delete
以外的所有内容,然后选择.delete
的选择器(这更简单。)
基本上,除了这个特定的孩子,我想选择父母的一切。
我尝试了li:not(.delete)
,但这没效果。有什么想法吗?
<li class="">
<a href="#">
<i class="icon-book"></i>
<span class="name">@randallb</span>
<i class="delete icon-remove-sign pull-right"></i>
</a>
</li>
答案 0 :(得分:5)
li :not(.delete)
需要空格来指定后代,not
对li
进行操作意味着选择li
类没有delete
答案 1 :(得分:2)
试试这个:
$('li > a *:not(.delete)')
答案 2 :(得分:0)
$('li').children().find('*:not(.delete)').css('color', 'red');
答案 3 :(得分:0)
如果这是你要找的东西。
// allChildrenArray will hold all the children of li except .delete
var allChildrenArray = [];
function getSelectedChildren(parentContainer, rejectedClass){
parentContainer.children().each(function(){
if(!$(this).hasClass(rejectedClass)){
allChildrenArray.push(this);
}
getSelectedChildren($(this), rejectedClass);
});
}
getSelectedChildren($('li'), 'delete');