如何获取指定元素下第n个carousel-item子元素的属性?
解决方案
假设你已经将找到的.carousel.slide元素存储在jQuery变量(比如$carouselSlide)中,以下两种单行语法都能实现需求:
方法1:使用.eq()方法(0基索引)
.eq()接受从0开始的索引值,如果你的n是从1开始计数(比如示例中需要第4个元素,对应n=4),则要传入n-1:
// 获取第n个carousel-item的指定属性,比如data-id const targetAttr = $carouselSlide.find('.carousel-inner .carousel-item').eq(n-1).attr('data-id');
方法2:使用:nth-child()选择器(1基索引)
:nth-child()接受从1开始的索引值,直接传入n即可:
// 若n是固定数值(比如4) const targetAttr = $carouselSlide.find('.carousel-inner .carousel-item:nth-child(4)').attr('data-id'); // 若n是变量,用模板字符串拼接选择器 const targetAttr = $carouselSlide.find(`.carousel-inner .carousel-item:nth-child(${n})`).attr('data-id');
注意点
- 如果你不确定索引的计数方式,建议先打印验证:
console.log($carouselSlide.find('.carousel-inner .carousel-item').eq(n-1)),确认是否选中目标元素。 - 替换代码中的
'data-id'为你实际需要获取的属性名(比如'id'、'class'等)。
内容的提问来源于stack exchange,提问作者yessoos
相关产品推荐
相关产品推荐

