如何使用JQuery选择指定序号的段落且无需为段落设置ID?
不用ID通过jQuery选择指定段落的方法
当然可以不用ID实现,你之前的写法存在语法问题,下面是几种可行的实现方式:
方法1:使用eq()方法
jQuery集合支持调用eq()方法,传入从0开始的索引值,就能定位到对应位置的元素。要选择第二个<p>标签(索引为1),可以这么写:
// 全局范围内的第二个p标签 $("p").eq(1) // 限定在#info容器内的第二个p标签,更精准 $("#info p").eq(1)
方法2:使用:eq()选择器
直接在CSS选择器中通过:eq()指定索引,写法更简洁:
$("#info p:eq(1)")
方法3:DOM元素转jQuery对象
你之前尝试的$("#p")[1]有两个问题:一是$("#p")是选择ID为p的元素,不是<p>标签,正确的标签选择器是$("p");二是[1]取出的是原生DOM元素,无法直接调用jQuery方法,需要把它重新包装成jQuery对象:
$($("#info p")[1])
结合你的代码修改示例
把show/hide按钮的逻辑改成不用ID的写法:
<div id="info"> <section> <div style="text-align: center">My Biography</div> <p> My name is JJ. </p> <p> I moved to USA when I was 6 years old. </p> <button id="show">Show</button> <button id="hide">Hide</button> </section> </div> <script> $(document).ready(function () { $("#show").click(function () { $("#info p").eq(1).css("visibility", "visible") }) $("#hide").click(function () { $("#info p").eq(1).css("visibility", "hidden") }) }) </script>
内容的提问来源于stack exchange,提问作者Niki Rich
相关产品推荐
相关产品推荐

