我有一个网站,我将在其中将元素作为瓷砖连续放置 4 个。我想添加到每个元素margin-left: 13px
中,除了每行中的每个第一个元素。有人可以指出我如何使用 jQuery 来完成吗?
问问题
1234 次
4 回答
3
于 2013-03-30T21:32:07.073 回答
3
工作示例:http: //jsfiddle.net/ZVd6Y/
假设包装行有一类row
......
和给定的HTML:
<div class="row">
<p class="first">first row</p>
<p>second row</p>
<p>third row</p>
</div>
<div class="row">
<p class="first">first row</p>
<p>second row</p>
<p>third row</p>
</div>
你会想使用:
$(document).ready(function(){
$('.row').children("p:not(.first)").addClass("extra-margin");
});
使用以下CSS:
.extra-margin{
margin-left: 13px;
}
于 2013-03-30T21:33:43.217 回答
0
试试这个:
var count = 0;
$('.classname').each(function(){
count++;
if(count !== 4){
$(this).css("margin-left", "13px");
} else {
count = 0;
}
});
于 2013-03-30T21:37:10.030 回答
0
您可以使用:not
和:nth-child()
选择器。例子:
$('div:not(:nth-child(4n))').css('margin-left', '13px');
演示:http: //jsfiddle.net/HsbUv/1/
于 2013-03-30T21:38:08.087 回答