并且还想要点击li span
上的第3个div文本这是我的结构结构ul> li>标签> span> div> div>格
$("#PlayListItem").on('click','label',function (){
alert($("#PlayListItem li").find("div:nth-child(2)").text());
});
$("#PlayListItem").on('click','span',function (){
alert($(this).find("div:nth-child(3)").text());
});
Thanx In Advance。
答案 0 :(得分:1)
:nth-child()
伪类选择器不起作用,因为有span
作为兄弟,所以使用:nth-of-type()
伪类选择器或jQuery :eq()
伪 - 类选择器使用索引获取元素。
$("#PlayListItem").on('click','label',function (){
alert($("#PlayListItem li").find("div:eq(1)").text());
});
$("#PlayListItem").on('click','span',function (){
alert($('#PlayListItem li').find("div:eq(2)").text());
});
更新:您可以通过点击元素引用该元素来减少代码。
$("#PlayListItem").on('click','label',function (){
alert($("div:eq(1)", this).text());
});
$("#PlayListItem").on('click','span',function (){
alert($(this).parent().find("div:eq(2)").text());
});
答案 1 :(得分:0)
由于您的问题不明确,但您可以从此处找到建议。
$(document).ready(function () {
$(".readmore").click(function () {
$(this).siblings(".pop").slideToggle();
return false;
});
});

.pop {
display:none;
}

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul>
<li><a class="readmore">first div</a>
<div class="pop">this ts the text</div>
</li>
<li>
<a class="readmore">second div</a>
<div class="pop">this ts the text</div>
</li>
<li>
<a class="readmore">Third div</a>
<div class="pop">this ts the text</div>
</li>
<ul>
&#13;