jquery第n个子选择器问题

标签 jquery jquery-selectors css-selectors

我想在 div 中选择图像。我想要的图像是编号 2、5、8、11 等。

$('.thediv img:nth-child(3n+1)').. 

对我不起作用,我错过了什么吗?谢谢

最佳答案

您的公式 3n + 1 不起作用,因为这些是将为以下 n 值选择的元素:

3(0) + 1 = 0 + 1 = 1
3(1) + 1 = 3 + 1 = 4
3(2) + 1 = 6 + 1 = 7
3(3) + 1 = 9 + 1 = 10
...

显然,这些不是选择的第 2、第 5、第 8、第 11……元素。它们每个都相差 1。您需要使用公式 3n + 2 来代替,因此将选择这些元素:

3(0) + 2 = 0 + 2 = 2
3(1) + 2 = 3 + 2 = 5
3(2) + 2 = 6 + 2 = 8
3(3) + 2 = 9 + 2 = 11
...

既然您在评论中说每个 img 都在 a 中,则 :nth-child() 伪类应该附加到 a,然后选择 img:

$('.thediv a:nth-child(3n+2) img')

关于jquery第n个子选择器问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5670187/

相关文章:

javascript - 带有 Iframe 的 Jquery 对话框在 IE9 中不起作用

javascript - 如何预加载图像,在继续之前强制加载图像(html/javascript)?

javascript - jQuery:使用动态生成变量作为选择器将 JSON 输入附加为内容

jquery 动态 css 选择器不区分大小写

html - 包含带焦点输入的 div 的 CSS 选择器

javascript - 选择元素中的文本(类似于用鼠标突出显示)

javascript - 通过文本而不是值设置 SELECT 元素

javascript - 操作因 DOM 复杂性而降低?

javascript - puppeteer 选择器;未选择按钮

JQuery 选择 td 中的一个元素