将类添加到jquery中的第n个子范围
Adding class to nth-child range in jquery
我正试图用这段代码将类添加到第n个子范围,但它不起作用:
$('.station li:nth-child(' + strno + '):nth-child(' + endno + ')').attr('class', 'current');
如果我试图使用此代码更改特定元素的类,那么它确实有效:
$('.station li:nth-child(' + strno + ')').attr('class', 'current');
你知道吗?
您可以使用gt()
和lt()
选择器来选择一系列类似子项的内容。
var strno = 1, endno = 3; // 0 based index
$('.station li:gt(' + (strno - 1) + '):lt(' + (endno - strno + 1) + ')').addClass('current');
.current {
color: red;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul class="station">
<li>Item 0</li>
<li>Item 1</li>
<li>Item 2</li>
<li>Item 3</li>
<li>Item 4</li>
<li>Item 5</li>
</ul>
您正在尝试使用诸如之类的选择器
.station li:nth-child(2):nth-child(10)
期望这会建立nth-child
元素的范围,但事实并非如此,你错了。
这建立了一种"answers"逻辑,在这种逻辑中,您告诉选择器引擎查找第二个和第十个子元素。显然,一个元素不可能同时存在。
我建议您使用.filter
从整套.station li
元素中只选择您感兴趣的元素。
$('.station li').filter(function (e){
var idx = $(this).index();
return idx>=1 && idx<4;
}).css("background-color","red");
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="station">
<ul>
<li>One</li>
<li>Two</li>
<li>Three</li>
<li>Four</li>
<li>Five</li>
</ul>
</div>
相关文章:
- 将值添加到使用_.map&_创建的变量中.范围
- 将类添加到jquery中的第n个子范围
- 将范围添加到角度种子默认视图控制器时,测试套件现在失败
- 如果指令包含在另一个指令中,我如何在隔离范围内添加双向数据绑定属性
- 输入类型文件将文件路径添加到范围
- 使用ng repeat添加多个视图实例时的范围界定问题
- 显示已动态添加的范围
- 如何将固定范围的垂直线添加到 D3.js 图表
- 通过添加自动标记库来了解 meteorjs 范围
- 输入范围使用按钮添加值
- 如何让此函数从范围中添加或减去并返回它
- 如何添加范围的标题属性值
- 传递到指令而不将其添加到范围
- 如何将范围滑块添加到轨道应用程序
- D3 时间刻度将前后时间范围添加时间间隔的百分比
- 在 Algolia 即时搜索范围滑块的最大值末尾添加“+”
- jQuery 将类添加到单击的单选按钮范围
- WKHTMLTOPDF - 添加一个侧边栏,该侧边栏跟随不同的文本范围
- 将因果报应范围添加到灰烬测试中
- 在FullCalendar的月份视图中为日期范围添加颜色