0

我有一个要求,我必须只过滤整个选择的一部分。这是示例

<li class="link">one</li>
<li class="link">two</li>
<li class="link">three</li>
<li class="link">four</li>
<li class="link">five</li>
<li class="link">six</li>
<li class="link">seven</li>
<li class="link">eight</li>
<li class="link">nine</li>
<li class="link">ten</li>

我的要求是将元素从“三”过滤到“五”,并且必须在它们上应用一些亮点。我不想使用循环并寻找一些优雅的过滤语法。我尝试了类似 $(".link:gt(2),lt(5)") 的方法,但没有帮助。

4

3 回答 3

2

使用.slice()

$(".link")​.slice(2,5)

http://jsfiddle.net/JYLpr/

于 2012-12-26T07:12:57.857 回答
1

通常一个接一个地应用选择器,:gt并且:lt也是从零开始的

 $(".link:gt(1):lt(3)")
于 2012-12-26T07:13:45.840 回答
0

试试这个代码它对我有用

<!DOCTYPE html>
<html>
<head>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js">
</script>
<script>
$(document).ready(function(){
  $("button").click(function(){
for(var i=1;i<=10;i++){
 $("#test"+i).css('display','none');
}
for(var i=4;i<=8;i++)
{
    $("#test"+i).css('font-family','Rupee Foradian,Verdana,Arial,Helvetica,sans-serif');
 $("#test"+i).css('font-weight','bold');
 $("#test"+i).css('display','block');
}
  });
});
</script>
</head>
<body>
<li class="link" id="test1">one</li>
<li class="link" id="test2">two</li>
<li class="link" id="test3">three</li>
<li class="link" id="test4">four</li>
<li class="link" id="test5">five</li>
<li class="link" id="test6">six</li>
<li class="link" id="test7">seven</li>
<li class="link" id="test8">eight</li>
<li class="link" id="test9">nine</li>
<li class="link" id="test10">ten</li>
<button>Click me</button>
</body>
</html>
于 2012-12-26T07:33:40.867 回答