如何选择当前节点的兄弟节点? 这是片段:
<div id="main">
<a class="test" href="test.html">Hello</a>
<div>Some text</div>
</div>
//script
$(".test").click(function() { $("this:parent > div").toggle(); });
or
$(".test").click(function() { $("this ~ div").toggle(); });
这些都不起作用。我知道我可以使用$(this)访问当前对象,但在这种情况下我不知道如何。
答案 0 :(得分:5)
以下是一些选项:
$(".test").click(function() {
$(this).next('div').toggle();
});
$(".test").click(function() {
$(this).siblings('div').toggle();
});
$(".test").click(function() {
$(this).closest('div#main').find('div').toggle();
});
仅取决于HTML标记中您还要选择哪一个。
答案 1 :(得分:2)
请务必不要在引号中添加this
。
$(".test").click(function() {
$(this).next().toggle();
});
jQuery有很多很棒的遍历功能。
答案 2 :(得分:0)
使用.siblings()
答案 3 :(得分:0)
您是否尝试切换#main div?如果是这样,.parent()
不会给你父div?
我认为你必须使用类似的东西:
$(".test").click(function() { $(this).parent("div").toggle(); });
答案 4 :(得分:0)
您可以重新调整选择范围:
$(".test").click(function() { $("~ div", this).toggle(); });