我想在 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/