我正在尝试选择元素的直接子元素。例如,给定DOM结构为:
<div class="track">
<div class="a"></div>
<div class="b"></div>
</div>
<div class="track">
<div class="a"></div>
<div class="b"></div>
</div>
<div class="track">
<div class="a"></div>
<div class="b"></div>
</div>
当用户点击说第一个音轨div时,我如何抓住它下方的直接a和b?
我尝试过使用
$(this).children(".a");
$(this).find(".a");
但它总是抓住对最底层轨道的引用。很感谢任何形式的帮助!谢谢!
编辑:我的问题在我的代码的另一部分中,我暂时引用了一个轨道。因此,当我点击一个轨道时,它会引用一个不同的轨道。谢谢大家的帮助!
答案 0 :(得分:2)
您对children()
的使用是正确的,因此问题必须在您更广泛的实现中,涉及.click()
处理程序。你能发布更多的代码吗?
这种事情会起作用:
$('.track').click(function(){
var trackChildren = $(this).children(); //will get you .a and .b for whichever .track was clicked
});
答案 1 :(得分:2)
Jsfiddle参考
$(".track").click(function(){
alert($(this).children(".a").html());
alert($(this).children(".b").html());
})
答案 2 :(得分:1)
您可以查看jsfiddle。