jquery过滤器之:contains()、.filter()

:contains 选择器选取包含指定字符串的元素。

该字符串可以是直接包含在元素中的文本,或者被包含于子元素中。

经常与其他元素/选择器一起使用,来选择指定的组中包含指定文本的元素,如:

$("p:contains(is)")    表示选择所有包含 "is" 的 <p> 元素。

再如:

$("p:contains(张三)") 或 $("p:contains("张三")")  表示选择所有包含 "张三" 的 <p> 元素。

在该选择器里也可以使用变量来达到选取的目的,如:

$(document).ready(function(){
var ddd="John"; 
$("div:contains('" + ddd + "')").css("color", "#f00"); 
}); 

我们也可以将jquery的filter方法和contains方法一起使用来达到更加模糊匹配的目的,如:

$(document).ready(function(){
$(".box").filter(":contains(李)").css("color", "#f00"); 
}); 

表示将包含”李“的box的文字颜色设置为红色。

转载于:https://www.cnblogs.com/tnnyang/p/4736339.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
这段代码已经很简洁了,不过还有一些可以优化的地方: 1. 使用变量存储选择器 可以使用变量来存储选择器,提高代码的可读性和可维护性。例如: ```javascript var $nav = jQuery("#nav"); $nav.slide({ type: "menu", titCell: ".nLi", targetCell: ".sub", effect: "slideDown", delayTime:300, triggerTime: 0, returnDefault: true }); var $section1 = jQuery(".section1 .slideBox"); $section1.slide({mainCell:".bd ul",autoPlay:true,interTime:5500,delayTime:2000}); var $section4 = jQuery(".section4 .slideTxtBox"); $section4.slide({}); var $picScrollTop = jQuery(".picScroll-top"); $picScrollTop.slide({titCell:".hd ul",mainCell:".bd ul",autoPage:true,effect:"top",autoPlay:true,vis:3}); ``` 2. 合并相同参数 对于多个 slide 方法中相同的参数,可以提取出来合并,减少代码冗余。例如: ```javascript var commonOptions = { autoPlay: true, delayTime: 2000 }; var $nav = jQuery("#nav"); $nav.slide(jQuery.extend({}, commonOptions, { type: "menu", titCell: ".nLi", targetCell: ".sub", effect: "slideDown", delayTime: 300, triggerTime: 0, returnDefault: true })); var $section1 = jQuery(".section1 .slideBox"); $section1.slide(jQuery.extend({}, commonOptions, { mainCell: ".bd ul", interTime: 5500 })); var $section4 = jQuery(".section4 .slideTxtBox"); $section4.slide({}); var $picScrollTop = jQuery(".picScroll-top"); $picScrollTop.slide(jQuery.extend({}, commonOptions, { titCell: ".hd ul", mainCell: ".bd ul", autoPage: true, effect: "top", vis: 3 })); ``` 这样做可以减少代码量,提高代码的可读性和可维护性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值