我无法弄清楚如何定位下一个 div 以使用 JQuery 显示/隐藏它。
JavaScript:
$("a.more").live("click", function(event){
event.preventDefault();
$(this).next('.show-more').toggle();
});
Run Code Online (Sandbox Code Playgroud)
DOM:
<p>
{{beschreibung}}
(<a class="more" href="{{id}}"><i class="icon-plus"></i>)
</p>
<div class="show-more" style="display:none;">
<p>
{{beschreibung_lang}}
</p>
</div>
Run Code Online (Sandbox Code Playgroud)
有什么想法问题出在哪里吗?
屏幕和键盘之间的故障:错过关闭标签(-;
事件处理程序中绑定的元素是锚点,锚点没有兄弟元素,即 next() 将不起作用。你需要首先遍历 DOM 到最近的段落,然后找到下一个 div 等。
live()已弃用,应替换on()为动态元素的委托版本,如下所示:
$(document).on("click", ".more", function(event){
event.preventDefault();
$(this).closest('p').next('.show-more').toggle();
});
Run Code Online (Sandbox Code Playgroud)