
使用过滤器(二):查找、串联
发布日期:2021-05-07 08:57:12
浏览次数:26
分类:精选文章
本文共 2278 字,大约阅读时间需要 7 分钟。
查找
向下查找
1、children() 该方法能够查找当前元素的所有或者部分子元素children([expr])
参数可选,是jQuery选择器表达式字符串,用于过滤子元素。如果省略,表示匹配所有的子元素
例:为列表框中的所有列表项定义一个下划线样式$(function(){ $('#menu').children().css("text-decoration",'underline')})
2、contents()
该方法不仅可以获取子元素,还可以获取文本节点和注释节点。该方法没有参数,功能等同于DOM的childNodes 3、find() 该方法能够查找所有后代元素,而children()方法制作查找子元素向上查找
1、parents() 该方法能够查找所有元素的祖先元素parents([expr])
参数expr表示jQuery选择器表达式字符串,用于过滤祖先元素。该参数可以选,如果省略,则将匹配所有元素的祖先元素。如果存在重合的祖先元素,则仅记录一次
2、parent()parent([expr])
参数可选用于过滤父元素,如果省略则将匹配所有元素的唯一父元素
3、parentUntil() 该方法相当于再parents()方法返回集合中截取部分祖先元素parentUnitl([expr])
参数可选,用于确定祖先元素的范围(例如某一个祖先元素);如果省略作用域parents()方法相同,匹配所有祖先元素
例:匹配三级菜单下的第一个列表项,然后用parentsUntil()方法获取在u1范围内的他的祖先元素,并为查找的祖先元素定义边框样式- 一级菜单
- 1
- 2
- 二级菜单
- 21
- 22
- 三级菜单
- 31
- 32
- 33
- C
- 3
4、offsetParent()
该方法无参数,用于查找当前元素最近的定位包含框,定位包含框指的是设置position属性值为relative或absolute的祖先元素 向前查找 1、prev()prev[expr]
用于匹配前一个相邻的元素,参数expr表示jQuery选择器表达式,用于过滤匹配元素。该参数为可选,如果省略,则将匹配所有上一个元素
例 :查找类名为red的p元素,然后使用prev方法查找前一个相邻的元素,并为其设置边框
$(function() { $('p.red').prev().css('border', 'solid 1px red')})
2.prevAll()
prevAll([expr])
与prev()方法类似,该方法能够向前获取所有相邻的同辈元素。参数可选用于过滤元素,如果省略向前获取所有相邻的同辈元
3、prevUntil()
prevUntil([selector])
向前匹配指定范围内所有的相邻元素参数可选,为jQuery表达式字符串,用于过滤匹配元素
例:先查找类名为red的p元素,然后查找h1元素前面的所有同辈元素,并设置边框
$(function() { $('p.red').prevUntil('h1').css('border', 'solid 1px red')})
向后查找
1、next()next([expr])
向后匹配一个元素,参数可选,如果省略则将匹配所有下一个相邻的元素
2、nextAll()
3、nextUntil()查找同辈元素
使用siblings()方法可以查找所有兄弟元素,不管其位置是前是后siblings([expr])
参数可选,如果省略则将匹配所有同辈兄弟元素
添加查找
使用add()方法可以为查找的结果集添加新的查找内容,add(expr,[content])
参数expr表示jQuery选择器表达式字符串,用于匹配元素并添加的表达式字符串,或者用于动态生成HTML代码,如果是一个字符串数组则返回多个元素怒。content为可选参数,可以是待查找的DOM元素集、文档或jQuery对象
串联
合并jQuery对象:addBack()
两个jQuery对象设置相同的样式床前明月光,疑是地上霜。
举头望明月,低头思故乡。
该例是将div中的p标签设置边框。如果同时希望为外围的div也设置边框,最简单的是再写一行代码,单独为div设置样式,但是这样与jQuery的链式语法原则相违背 在这里使用addBack帮助用户把前后jQuery对象合并成一个新的jQuery对象,在这里$('div')和$('div').find('p')是两个不同的jQuery对象
$('div').find('p').addBack().css('border', 'solid 1px red')
返回jQuery对象:end()
两个jQuery对象设置不同的样式$('div').find('p').css('border', 'solid 1px red') .end().css('background', 'yellow')
该例是先为p标签设置边框样式,然后再为外层的div设置背景,完成的是两个任务
发表评论
最新留言
留言是一种美德,欢迎回访!
[***.207.175.100]2025年04月01日 16时49分03秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
程序员应该知道的97件事
2019-03-05
我编程,我快乐—程序员职业规划之道
2019-03-05
Web基础应用 NFS服务基础 触发挂载
2019-03-05
create-react-app路由的实现原理
2019-03-05
PSI值
2019-03-05
海思Hi3531DV100开发环境搭建
2019-03-05
JavaScript上传下载文件
2019-03-05
QWaitCondition把异步调用封装成同步调用
2019-03-05
Linux驱动开发之PCIe Host驱动
2019-03-05
Vue.js Element Basic组件使用
2019-03-05
android 头像选择,裁剪全套解决方案,你值得拥有!
2019-03-05
MapReduce
2019-03-05
springboot swagger2
2019-03-05
shell(十)case的几个典型应用
2019-03-05
Linux环境变量配置错误导致命令不能使用(杂谈)
2019-03-05
openstack安装(六)镜像glance服务安装
2019-03-05
openstack安装(九)网络服务的安装--控制节点
2019-03-05
shell编程(六)语言编码规范之(变量)
2019-03-05
vim杂谈(三)之配色方案
2019-03-05
vim杂谈(五)之vim不加载~/.vimrc
2019-03-05