jQuery学习笔记——筛选元素集合

filter(expression) 方法

利用传入的选择器表达式或筛选函数,从集合中筛选元素。

expression为选择器表达式

e.g. 对所有标签<a>中title包含文本special的元素应用special类样式。

$('a').filter('[title*=special]').html("special Link").addClass("special");

expression为筛选函数  

filter()方法,当传给它一个函数,它会为每个包装集元素反复调用这个函数,如果函数调用返回false,就删除当前元素。利用筛选函数体的函数上下文this,每次调用都能存取当前包装集元素。

e.g. 创建包含数字值的所有<td>元素的包装集。  

$('td').filter(function()
{
   console.log(this.innerHTML.match(/^\d+$/)) ;
})

jQuery遍历——slice(begin, end)方法

把匹配元素集合缩减为指定的指数范围的子集。

参数说明:

begin:基于零的整数值,指示开始选取元素的位置。如果是负数,则只是从集合末端开始的偏移量。

end: 基于零的整数值,指示结束选取元素的位置(此位截止,往前偏一位),如果省略,则选取范围会在集合末端结束。如果是负数,同上。

e.g.

<ul>
        <li><a href="http://jquery.com/ui" id="a1" class="link"><b>link1</b></a></li>
        <li><a href="http://jquery.com/doc"" id="a2" class="link">link2</a></li>
        <li><a href="http://jquery.com/demo" id="a3" class="link">link3</a></li>
        <li><a href="#" id="a4" class="link" title="special">link4</a></li>
        <li><a href="#" id="a5" class="link"title="special">link5</a></li>
        <li><a href="#" id="a6" class="link"title="special">link6</a></li>
</ul>

1、选取从第3个<li>元素开始到第四个的集合。

  $("body ul li").slice(2,4)

 2、选取从第三个<li>元素开始到最后的集合。

  $("body ul li").slice(2)

原文地址:https://www.cnblogs.com/technote/p/3024471.html