为什么我不能这样做:
$(elem).children().filter(':not(:eq(0,1))').doStuff();
如何从我的选择中排除多个键?
由于
答案 0 :(得分:0)
如果它们从一开始就是全部,那么这将起作用:
$(elem).children().slice(2).doStuff();
否则,这可能有效:
var exclude = [2,5];
$(elem)
.children()
.filter(function(i){ return exclude.indexOf(i) === -1; })
.doStuff();
你可以把它变成一个不错的插件:
$.fn.exclude = function(){
var args = arguments;
return this.filter(function(i){ return args.indexOf(i) === -1; });
};
$(elem).children().exclude(0,3,8).doStuff();
可以做更好的类型处理和优化,但这就是主意。