我正在使用一个使用可折叠块的小型系统 - 为此我有一个css类,可以根据jQuery的依赖性来打开或关闭。
我使用的代码是:
$("#click_me").on("click", function () {
$("#clicked_action").toggleClass("show");
});
这有效,但不是所需要的。需要的是:
$(".collapse-header").on("click", function () {
$(this).closest(".collapse-body").toggleClass("show");
});
但这不起作用。
我没有收到任何控制台错误,所以感谢任何帮助
编辑 HTML值:
<div class="collapse-header" id="click_me">
<span class="float-left">Click me</span>
<span class="float-right"><span class="glyphicon glyphicon-plus"></span></span>
<hr class="hr" />
</div>
<div class="collapse-body" id="clicked_action">
I'm collapsed
</div>
答案 0 :(得分:4)
您正在寻找
$(this).parent().find(".collapse-body")
关于.closest
$(element).closest(selector)
是找到第一个匹配选择器的元素,遍历元素的祖先。
在您的情况下,您的元素处于同一级别(&#34;兄弟姐妹&#34;),因此.closest
无法正常工作。