Javascript 将前2个后的所有作为目标
假设我有这样的东西:Javascript 将前2个后的所有作为目标,javascript,jquery,jquery-selectors,Javascript,Jquery,Jquery Selectors,假设我有这样的东西: Paragraph One <br> <br> Paragraph Two <br> <br> Paragraph Three <br> <br> Paragraph Four <br> <br> Paragraph n <br> <br> 我是否应该使用jQuery选择器来针对从第二段到第n段的所有内容?一旦我确定了如何针对这些段落,我想将它们设置为隐
Paragraph One
<br>
<br>
Paragraph Two
<br>
<br>
Paragraph Three
<br>
<br>
Paragraph Four
<br>
<br>
Paragraph n
<br>
<br>
我是否应该使用jQuery选择器来针对从第二段到第n段的所有内容?一旦我确定了如何针对这些段落,我想将它们设置为隐藏
编辑:当我提到上面的段落时,我的意思是说一段文字。当前未使用任何p元素。您应该将文本标记为
<p>par 1</p>
<p>par 2</p>
使用现有的标记并没有简单的方法可以通过jQuery实现,至少jQuery没有匹配文本节点的选择器,这正是您试图隐藏的
*如果您特别希望在n处停止,请进行编辑,例如,如果n=7,请使用
$("p:lt(7):gt(0)").hide();
你应该把课文标记为
<p>par 1</p>
<p>par 2</p>
使用现有的标记并没有简单的方法可以通过jQuery实现,至少jQuery没有匹配文本节点的选择器,这正是您试图隐藏的
*如果您特别希望在n处停止,请进行编辑,例如,如果n=7,请使用
$("p:lt(7):gt(0)").hide();
这就是jquery的功能
该方法设计用于
给定一个表示
一组DOM元素,.slice
方法构造一个新的jQuery对象
从匹配的子集
元素。提供的开始索引
标识其中一个的位置
集合中的元素;如果结局是
省略,此元素之后的所有元素
将包含在结果中
所以
实例:
注意-addClass是为了帮助可视化,隐藏,淡出等等可能就是你想要的
您还可以按如下方式组合:gt和:lt选择器
$'p:lt6:gt3'。添加class'the-class'
或者只是
$'p:gt2.hide这是jquery
该方法设计用于
给定一个表示
一组DOM元素,.slice
方法构造一个新的jQuery对象
从匹配的子集
元素。提供的开始索引
标识其中一个的位置
集合中的元素;如果结局是
省略,此元素之后的所有元素
将包含在结果中
所以
实例:
注意-addClass是为了帮助可视化,隐藏,淡出等等可能就是你想要的
您还可以按如下方式组合:gt和:lt选择器
$'p:lt6:gt3'。添加class'the-class'
或者只是
$'p:gt2'.hide您可以使用,:epSelector以索引号为目标 例如,在你的情况下,它可能是这样的
$("br:eq(3)")
您可以使用,:epSelector以索引号为目标 例如,在你的情况下,它可能是这样的
$("br:eq(3)")
当你说段落的时候,你实际上是在使用问题代码中没有显示的p元素吗?好问题。我只是指一段一段的文字。我们目前没有在标记中使用任何p元素。我认为我们可能基于@wheresrhys下面的解决方案。当你说段落时,你实际上是在使用你问题中代码中没有显示的p元素吗?好问题。我只是指一段一段的文字。我们目前没有在标记中使用任何p元素。我想我们可以根据下面@wheresrhys的解决方案,这正是我想要的。谢谢我宁愿现在不必按照上面@wheresrhys的建议更改html的结构。谢谢你的演示。我很高兴这有帮助。这个例子有点像躺着。这个问题与我在你的:gt3:lt19示例中回答的另一个问题非常相似,你的:gt和:lt是错误的。如果:gt是第一个,则从匹配集开始的元素将被删除,因此在:lt下一个运行时,后面的元素将以较低的索引结束。除非更改html,否则上面的代码恐怕也无法工作。给定的JSFIDLE包含多个标记。这里有一个没有它们的例子@James_Allardice不起作用,如果他在做$'p'.gt3.lt19,这是真的,但我认为如果它们是初始选择的一部分,这是不成立的。这正是我想要的。谢谢我宁愿现在不必按照上面@wheresrhys的建议更改html的结构。谢谢你的演示。我很高兴这有帮助。这个例子有点像躺着。这个问题与我在你的:gt3:lt19示例中回答的另一个问题非常相似,你的:gt和:lt是错误的。如果:gt是第一个,则从匹配集开始的元素将被删除,因此在:lt下一个运行时,后面的元素将以较低的索引结束。除非更改html,否则上面的代码恐怕也无法工作。给定的JSFIDLE包含多个标记。这里有一个没有它们的例子@James_Allardice不起作用,如果他在做$'p'.gt3.lt19,那是真的,但我认为如果它们是初始选择的一部分,它就不成立了。是的,我有一种感觉,使用当前的标记将非常困难,但我认为我们保持这种方式。我会检查是否有可能改变它,但我不确定它是否会像在这种情况下改变它一样简单,不幸的是
当然。谢谢你的加价。如果我们决定这样做的话,我会在将来使用它。是的,我有一种感觉,使用当前的标记会非常困难,但我认为我们会保持这种方式。我将检查是否可能更改它,但不幸的是,我不确定它是否会像在这种情况下更改它那样简单。谢谢你的加价。如果我们决定走那条路,我将来会用这个。