如何使用jQuery选择thumbSlider类下的子元素?
jQuery 选中
.thumbSlider 下后代元素的实现方法 嘿,这事儿其实超简单——jQuery的选择器逻辑和你熟悉的CSS几乎是无缝衔接的,完全支持你说的后代选择器写法,我给你捋几种常用的实现方式:
直接使用CSS风格的后代选择器
和你写CSS时的.thumbSlider .child-element语法完全一致,直接把这个选择器字符串传给jQuery构造函数就可以。比如你要选中.thumbSlider下所有的.slide-item元素(不管嵌套层级),代码如下:// 选中.thumbSlider下所有后代.slide-item元素 $('.thumbSlider .slide-item')这里的空格是关键,它代表“匹配所有后代元素”,不管子元素嵌套多少层都会被选中。
用
.find()方法(推荐缓存父元素时使用)
如果你已经提前获取了.thumbSlider的jQuery对象(比如为了性能缓存起来),可以用.find()方法来查找它下面的后代元素,这样能避免重复查询DOM,更高效:// 先缓存父元素,减少DOM查询次数 const $thumbSlider = $('.thumbSlider'); // 从缓存的父元素中查找后代.slide-item const $sliderItems = $thumbSlider.find('.slide-item');如果只想选直接子元素(非所有后代)
要是你需要的是.thumbSlider的直接子元素(对应CSS的>选择器),jQuery同样支持两种写法:// 写法1:直接用CSS子选择器语法 $('.thumbSlider > .slide-item') // 写法2:用.children()方法 $('.thumbSlider').children('.slide-item')
简单总结下:jQuery的选择器语法和CSS高度兼容,你熟悉的CSS后代/子选择器可以直接复用;如果已经持有父元素的jQuery实例,用.find()或.children()会更灵活,性能也更优。
内容的提问来源于stack exchange,提问作者JeVic
相关产品推荐
相关产品推荐

