说我有类似的东西:
Paragraph One
<br>
<br>
Paragraph Two
<br>
<br>
Paragraph Three
<br>
<br>
Paragraph Four
<br>
<br>
Paragraph n
<br>
<br>
我是否应该使用jQuery选择器来定位从第2段到第n段的所有内容?一旦我弄清楚如何定位这些段落,我想将它们设置为隐藏。
编辑:当我提到上面的段落时,我的意思是说一段文字。目前没有使用任何p
元素。
答案 0 :(得分:4)
您应该将文字标记为
<p>par 1</p>
<p>par 2</p>
然后你可以使用
$("p:gt(0)").hide();
使用标记你没有简单的方法来实现它(至少使用jQuery),因为jQuery没有匹配文本节点的选择器,这就是你想要隐藏的东西。
*编辑如果你特意想在n处停止然后使用(例如,如果n = 7)
$("p:lt(7):gt(0)").hide();
答案 1 :(得分:2)
这就是jquery .slice() 方法是为...设计的。
给出一个代表的jQuery对象 一组DOM元素,.slice() method构造一个新的jQuery对象 来自匹配的子集 元素。提供的开始索引 确定其中一个的位置 集合中的元素;如果结束了 省略了这一个之后的所有元素 将包含在结果中。
所以
$('p').slice(3,6).addClass('the-class');
//note Zero Based indexing. Plus it wont include the last element.
直播示例: http://jsfiddle.net/t9Nmy/
注意 - addClass是为了帮助可视化它,.hide(), .fadeOut(), etc
可能就是您之后的
您还可以将:gt()和:lt()选择器组合如下
$('p:lt(6):gt(3)').addClass('the-class');
或只是
$('p:gt(2)').hide()
答案 2 :(得分:0)
您可以使用:ep()选择器来定位索引号。
例如在你的情况下它可能是这样的
$("br:eq(3)")