如何找到其他Div的元素
HTML
<div>
<div>
<a class="txt">Some text</a>
</div>
<div>
<a class="txt">Some text</a>
<button id="button"/>
</div>
</div>
Jquery的
$(".button").bind("mouseover", function () {
$(this).siblings(".txt").text("some more text"));
});
如果元素存在于同一个Div中,它可以正常工作,但如果我想捕获不同div中存在的元素,那么它将无法工作(显然)所以..任何答案如何使其工作?
答案 0 :(得分:2)
示例:http://jsfiddle.net/wrxsti85/Bh3Ex/
您需要为特定情况找到特定的DOM traversion方法。像这样:
$(this).parent().prev().find('.txt').text("some more text");
还有其他一些内容,例如.children(),但您需要找到适用于您的用例的内容。
修改:http://api.jquery.com/category/traversing/
希望这有帮助!
答案 1 :(得分:0)
我会这样做,使用更加可维护的方式:
HTML:
<div class="container">
<div>
<a class="txt">Some text</a>
</div>
<div>
<button class="button"/>
</div>
</div>
jQuery的:
$(".button").on("mouseover", function () { //or still use bind depending your jQuery version
$(this).closest(".container").find('.txt').text("some more text");
});
答案 2 :(得分:0)
改变这个:
$(this).siblings(".txt").text("some more text"));
到此:
$(this).closest('div').siblings('div').find('.txt').text('some more text');