filter方法
有什么用?
filter() 方法返回符合一定条件的元素。
该方法让您规定一个条件。不符合条件的元素将从选择中移除,符合条件的元素将被返回。
该方法通常用于缩小在被选元素组合中搜索元素的范围。
括号中的内容就是条件了。
参数是是什么?
参数可以使选择器,(各种jquery选择器都行)。
也可以是一个函数。
举个例子
参数为过滤
<ul>
<li>list item 1</li>
<li>list item 2</li>
<li>list item 3</li>
<li>list item 4</li>
<li>list item 5</li>
<li>list item 6</li>
</ul>
<script src="http://cdn.static.runoob.com/libs/jquery/1.10.2/jquery.min.js"></script>
<script>
$( "li" ).filter( ":even" ).css( "background-color", "red" );
</script>
结果偶数行都变黄了。
参数是函数是是怎样?
还是实现上面的效果
<ul>
<li>list item 1</li>
<li>list item 2</li>
<li>list item 3</li>
<li>list item 4</li>
<li>list item 5</li>
<li>list item 6</li>
</ul>
<script src="http://cdn.static.runoob.com/libs/jquery/1.10.2/jquery.min.js"></script>
<script>
$("li")
.filter(function(x){
return x%2==0
})
.css("background-color","yellow")
</script>
filter中函数的那个参数不是必须的。参见
菜鸟教程在线编辑器
不过要是你不写参数的话就没必要用函数来实现。
这个filter的参数为集合中的每个元素规定要运行的函数。如果返回 true,则保留元素,否则元素将被移除
是一个回调函数,默认参数为index。可以说这个函数作为filter的参数只不过是一个复杂点的过滤器罢了~
后面还可以跟着其他链式操作。