- 4
- 5
span2
效果:
1.4 offsetParent():寻找最近的有定位的父级
不能传参,如果父级都没有设置定位,就找html
给div.test设置定位
.test {
position: relative;
}
在div.test的子元素div.item,寻找最近的设置定位的父元素
console.log( $(‘.item’).offsetParent() );
如果我都不设置定位,找到的就是html标签:
总结:
2. children / find / end / add / addBack
html文件用的也是最开始那个
- 1
- 2
- 3
span
- 4
- 5
span2
2.1 children() 查找子元素(不是所有后代,只找直接的)
console.log( $(‘ul’).children() );//查找ul下的子元素
效果:
可以传css选择器:
console.log( $(‘ul’).children(‘.test’) );//查找ul子元素,且类名为test
效果:
2.2 find() 查找后代元素
console.log( $(‘ul’).find(‘span’) );
2.3 end() :回退,prevObject的封装
在前面调用find(),返回的jQuery对象中,有记录了父级的信息,存储在prevObject中
所以,我们可以通过调用prevObject属性,返回上一级,做一些操作
console.log($(‘ul’).find(‘li:eq(3)’));
$(‘ul’).find(‘li:eq(3)’).css(‘background’, ‘red’).prevObject.find(‘li:eq(2)’).css(‘background’, ‘pink’);
$('ul').find('li:eq(3)')
找到ul下索引为3的li,调用css()将背景颜色设置成红色,返回jQuery对象$('li:eq(3)')
;'$('li:eq(3)').prevObject'
回退一步,是$('ul')
;继续
find('li:eq(2)')
找到ul下索引为2的li,调用css()将背景颜色设置成粉色在jQuery中,end()封装了这一功能
$(‘ul’).find(‘li:eq(3)’).css(‘background’, ‘red’).end().find(‘li:eq(2)’).css(‘background’, ‘pink’);
效果一致
回退到上一级具体是哪一级,是跟find对应的,如果find查找的不是直接子元素,prevObject对应的也不是直接父元素
console.log( $(‘ul’).find(‘span’) );//span不是ul的直接子元素,prevObject回去的是ul
2.4 add() :把元素添加到已存在的元素组合中
参数可以是css选择器(selector)、原生dom、jQuery对象、html标签
如果我们想要给第一个和最后一个li加背景颜色,可能要写两行
$(‘li:first’).css(‘background’, ‘orange’);
$(‘li:last’).css(‘background’, ‘orange’);
都是给背景换橙色,分两行写不够简练,于是,用add():
$(‘li:first’).add(‘li:last’).css(‘background’, ‘orange’);
效果一致:
2.5 addBack():使用链式操作时调用,可以同时获取当前对象和前面获取的对象
- 1
- 2
- 3
- 4
- 5
span2
$(‘li:eq(1)’).css(‘background’,‘pink’).nextAll().css(‘background’,‘blue’).addBack().css(‘color’, ‘white’)
将索引1的li背景颜色设置成粉色;
索引1的li后面的标签背景颜色都设置成蓝色
addBack,将当前选中的标签和前面一组选中的标签中的字体颜色改成白色,索引1的li后面的标签和索引1的li字体颜色变成白色
效果:
addBack影响的只是当前这一组对象和链式操作前一组的对象:
如果A连接B连接C,C对象调用了addBack(),只有BC被影响,A没有在addBack范围内
$(‘li:eq(1)’).css(‘background’,‘pink’)
.next().css(‘background’,‘yellow’)
.next().css(‘background’,‘orange’)
.addBack().css(‘color’, ‘white’)
索引1的li设置背景粉色
最后
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助。
因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点!不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!
如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
715887960844)][外链图片转存中…(img-8Vxp30io-1715887960845)]
[外链图片转存中…(img-id7vvWcJ-1715887960845)]
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点!不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!
如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
前端提高篇(八十九):jQuery的DOM的遍历操作(二)(2)
最新推荐文章于 2024-09-23 16:36:59 发布
span