对于店面我正在建立一个简单的选择器,允许根据他们的类显示和隐藏元素。
我正在使用nth-child()选择器为每个第3个元素添加一个类,但即使选择器确实可以显示和隐藏元素,我的脚本也不会在创建后将类添加到第三个元素选择。
我使用的代码非常大(并且绝对可以优化),所以我的意思是please take a look at this jsFiddle。
我做错了什么?
答案 0 :(得分:2)
你误解了n-child的所作所为。
您希望.myclass:nth-child(3n)
选择.myclass
的每第3次出现。
它真正做的是选择它的父节点的每个nth-child
元素,而不管它是什么类。它基本上充当组合选择器。在你的情况下
选择同样具有类.myclass
的每个第三个元素
在您的情况下,您应该使用:
$(".myclass").each(function(index, item){
if (index % 3 == 0) {
// do something
}
})
答案 1 :(得分:0)
您的代码已修改.. 替换了行
jQuery('.' + className).parent().children('.' + className + ':nth-child(3n) a').addClass('product_item_last');