谈谈jquery 筛选中的 contents() children() filter() 与find()
来源:互联网 发布:淘宝卖家软件工具吧 编辑:程序博客网 时间:2024/06/05 19:19
之前在网上看到一个题目是这样子,就是把上面这段这个带有一些文本节点的 <div>,每个节点被两个折行元素 (<br />) 分隔的文本转成良好的段落;
网上有人给出了这样的答案:
$('.container').contents().filter(function() {
return this.nodeType == 3;
})
.wrap('<p></p>')
.end()
.filter('br')
.remove();
我服了,
由于之前对contents(),filter()用法不是很熟,决定好好研究下。。
一、contents()与children()的用法和区别
contents()方法方法获得匹配元素集合中每个元素的子节点,包括文本和注释节点。而children()只能获得匹配元素
集合中每个元素的子节点。
$('.container').contents() //可以获得 class 为container 的div 下的所有元素之间的子节点,包括文本节点
在控制台打印出来可以看到
而 $('.container').children() //只能获得div下的元素节点,如图下:
二、filter()与find()的用法与区别
fitler(selector) 会对自身集合元素的筛选,而find(selector)是对匹配元素集合中的所有后代元素的筛选
案例如下:
Html Markup
console.log($('div').find('.rain').html()) 打印出来的是 //测试1
console.log($('div').filter('.rain').html()) 打印出来的是 //<p>测试2</p>
而且 fiteler(selector|fn) 可以接受一个函数作为测试元素的集合,它接受一个参数index,这是元素在jQuery集合的索引。在函数, this指的是当前的DOM元素。
而 find()不能接受函数作为参数;
总结:有这些基础知识,再回到刚开始时候抛出的问题,那么就很好写了,先找出文本节点,给文本节点加一个p标签,然后找到<br/> ,给剔除掉;
这里再补充一个知识 :jquery 中end() 该方法结束当前链条中的最近的筛选操作,并将匹配元素集还原为之前的状态。
今天就写到这边了,开始上班了,继续加油。希望以后自己能坚持写文章,文章写的有不对的地方请各位大神指出来,多多交流
- 谈谈jquery 筛选中的 contents() children() filter() 与find()
- jquery中find,children,contents的区别
- jQuery:find()与children()区别
- jQuery筛选器children()
- 【jquery】find() 方法,filter()方法和children()方法
- jquery中filter,children,find三者的区别?
- 关于对jQuery中find、filter、children的理解
- jquery中find与children的区别
- jquery find children 区别
- jQuery筛选器children()详解
- 解读jQuery筛选器children()
- jquery笔记:筛选 eq,first,last,filter,is,has, not, children,closest, nextUntil,parents,parentsUntil.....
- jquery中的contents方法
- jQuery中的contents用法
- jQuery笔记-jQuery筛选器children()详解
- jquery遍历之children()与find()的区别
- jquery中children()与find()用法区别详解
- 基于jquery中children()与find()的区别介绍
- 1004. Counting Leaves (30)(PAT甲)
- JS与面向对象
- 如何优雅地使用Sublime Text3
- PHP学习路线图
- oracle表空间及用户的创建及删除
- 谈谈jquery 筛选中的 contents() children() filter() 与find()
- 【Redis】复制、sentinel与集群
- 2017 计蒜之道 第二场 A. 百度的年会游戏
- ios 程序在内存中运行时,内存分几个区,各自用途?
- Tomcat部署项目去掉项目名称
- app 证书和上架流程
- 【Sets】使用Google Guava工程中Sets工具包,实现集合的并集/交集/补集/差集
- SQL 常用增删改查栗子
- linux 内存占用情况查看并优化