Jquery 选择奇数/偶数子div
我正在尝试从代码服务器端动态创建一本书。该部件工作正常,并产生如下输出:Jquery 选择奇数/偶数子div,jquery,jquery-selectors,Jquery,Jquery Selectors,我正在尝试从代码服务器端动态创建一本书。该部件工作正常,并产生如下输出: <div id="pagesContainer"> <div class="pageContent"> <div> Page 1 content </div> </div> <div class="pageContent"> <div>
<div id="pagesContainer">
<div class="pageContent">
<div>
Page 1 content
</div>
</div>
<div class="pageContent">
<div>
Page 2 content
</div>
</div>
<div class="pageContent">
<div>
Page 3 content
</div>
</div>
<div class="pageContent">
<div>
Page 4 content
</div>
</div>
<div class="pageContent">
<div>
Page 5 content
</div>
</div>
</div>
我需要做的,最好是使用jQuery将类添加到最内部的div中,如pageleft或pageright。例如,第1页、第3页和第5页将向左翻页,而第2页和第4页将向右翻页。也可能有超过或少于5页。我尝试过使用一系列不同的偶数/奇数选择器场景,但似乎无法使其正常工作
有人能给我指出正确的方向吗
谢谢 这应该行得通
$('#pagesContainer').children('.pageContent').each(function(index)
{
$(this).addClass(index % 2 ? 'page-right' : 'page-left');
});
演示。尝试:奇数和:偶数选择器:
$('.pageContent:odd').addClass('odd');
您还可以使用:nth child来利用性能提升,因为它是一个内置选择器:
$('.pageContent:nth-child(odd)').addClass('odd');
尝试使用第n个child,如下所述:
使用:奇数和:偶数选择器 例如:
$('.pageContent:odd').addClass("page-left")
$('.pageContent:even').addClass("page-right")
使用“:oddand:偶数”选择器
这就是你想要达到的目标吗? 并不是说,因为元素是0索引的,:偶数将反直觉地选择第一个、第三个、第五个等元素 从文件中 特别要注意的是,基于0的索引意味着, 与直觉相反:甚至选择第一个元素,第三个元素, 在匹配的集合中以此类推
当使用.each进行迭代时,jQuery传递一个整数;你就不能用这个吗?@ManseUK你说得很对。我读到他想在交替行中添加类,并在没有注意到CSS没有被标记的情况下,提出将CSS直接应用于交替行。当然,这个类可以做的不仅仅是CSS!我把这个标记为答案,因为它最接近我。我最终使用了$.pageContent:nth childodd>div.addClasspage-left;符合我的确切需求!谢谢
.pageContent:nth-child(even) { /* Something amazing */ }
$('.pageContent:odd').addClass("page-left")
$('.pageContent:even').addClass("page-right")
$('.pageContent:odd').addClass('oddClass')
$(".pageContent:odd").addClass("oddPage");
$(".pageContent:even").addClass("evenPage");
$('#pagesContainer > div:even').addClass('page-left');
$('#pagesContainer > div:odd').addClass('page-right');