0

我需要hr在第四个元素之后添加标签,但它破坏了我的 jquery,它padding-right从第四个元素中删除。

没有 hr 标签,我的 jquery 工作正常

 $("div.container  > div:nth-child(4n+4)").css("padding-right", "0px");

但是当我添加


标记它只是破坏了 jquery 在这种情况下它会从 4 div 和 7th div 中删除填充,因为它很重要
也作为子项。

我也试过

$("div.container > div.image-wrapper:nth-child(4n+4)").css("padding-right", "0px");

这没有工作的事件。

我怎样才能修改它,使它只计算 div 的类image-wrapper作为它的孩子,并只从第 4 和第 8 div 中删除填充。

HTML

<div class="container">
    <div class="image-wrapper"></div>
    <div class="image-wrapper"></div>
    <div class="image-wrapper"></div>
    <div class="image-wrapper"></div>
    <hr class="video-divider-line">
    <div class="image-wrapper"></div>
    <div class="image-wrapper"></div>
    <div class="image-wrapper"></div>
    <div class="image-wrapper"></div>
    <div class="image-wrapper"></div>

</div>
4

3 回答 3

2

尝试这个:

var $divs = $("div.container > div.image-wrapper");

for (var i = 3; i < $divs.length; i+=4) {
   $divs.eq(i).addClass('zero-padding');
}

http://jsfiddle.net/RKUae/

或者:

.zero-padding { padding-right: 0 }

$("div.container > div.image-wrapper").addClass(function(i) {
    if (++i % 4 === 0) return 'zero-padding';
});
于 2013-09-17T07:14:08.187 回答
1

尝试第 n 个类型

$("div.container  > div:nth-of-type(4n+4)").css("padding-right", "0px");

或者

$("div.container  > .image-wrapper:nth-of-type(4n+4)").css("padding-right", "0px");
于 2013-09-17T07:20:19.680 回答
1
$("div.container .image-wrapper:eq(3),div.container .image-wrapper:eq(6)").css("padding-right", "0px");

参考当量

于 2013-09-17T07:09:41.120 回答