Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 如何从我的选择中排除多个关键点_Jquery_Filter_Key - Fatal编程技术网

Jquery 如何从我的选择中排除多个关键点

Jquery 如何从我的选择中排除多个关键点,jquery,filter,key,Jquery,Filter,Key,为何我不能这样做: $(elem).children().filter(':not(:eq(0,1))').doStuff(); 如何从选择中排除多个关键点 谢谢如果它们都是从一开始的,那么这就行了: $(elem).children().slice(2).doStuff(); var exclude = [2,5]; $(elem) .children() .filter(function(i){ return exclude.indexOf(i) === -1; }) .doStuff

为何我不能这样做:

$(elem).children().filter(':not(:eq(0,1))').doStuff();
如何从选择中排除多个关键点


谢谢

如果它们都是从一开始的,那么这就行了:

$(elem).children().slice(2).doStuff();
var exclude = [2,5];

$(elem)
.children()
.filter(function(i){ return exclude.indexOf(i) === -1; })
.doStuff();
否则,这可能会起作用:

$(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();

可以更好地进行类型处理和优化,但这正是我的想法。

如果我想排除键0和键8,但不是两者之间的所有内容,该怎么办?@Esben,你可以过滤它们