JQuery遍历筛选方法

JQuery遍历筛选的几个方法


.slice()和.filter()

这两种方法都属于过滤方法,.filter()用来筛选出与指定表达式匹配的元素集合。而.slice()是匹配元素集合缩减为指定的指数范围的子集。二者返回类型都是jquery。
如下有6行段落,若要选中第2~4行的段落并将背景色改成#FF0,以上两种方法都能够实现。

<body>
<p>This is a paragraph.</p>
<p>This is a paragraph.</p>
<p>This is a paragraph.</p>
<p>This is a paragraph.</p>
<p>This is a paragraph.</p>
<p>This is a paragraph.</p>
</body>

采用.slice(start,[end]),首先要设置好筛选范围,[end]表示不包括该设置值。

$("p").slice(1, 4).css("background","#FF0");

采用.filter(fn)

$("p").filter(function(n){return n>=1&&n<4}).css("background","FF)");

效果如下:
这里写图片描述

查找方法.closest() .parent() .parents()

三种方法都是当前元素开始沿 DOM 树向上查找。.closest()是查找第一个与之匹配的祖先元素,.parent()是查找每个匹配元素的父元素,而.parent()是查找每个匹配元素的所有祖先。
如图设置了三个div:其中div1的子元素是div2,div2的子元素是div3,div3的子元素是div4
这里写图片描述
选择内容为div4的段落的div父元素;并设置border-color:red;

$("p:contains('div4')").parent("div").css("border-color","red");
$("p:contains('div4')").closest("div").css("border-color","red");

这里写图片描述

选择内容为div4的段落的所有div祖先元素:

$("p:contains('div4')").parents("div").css("border-color","red");

这里写图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值