我想创建一个FAQ页面,并使用jQuery来显示每个答案。但它不起作用。
每个问答的格式是这样的:
<div><a href="javascript:void(0)" class="expand">First Question</a></div>
<div class="answer" style="display:none">First Answer</div>
我使用的jQuery代码是:
$(".expand").click(function(){
$(this).next('.answer').slideToggle();
});
这是错的吗?你也可以看到它的jsFiddle。
3条答案
按热度按时间daupos2t1#
对于
next()
来说,这两个元素不在同一级别。试试这个:
这里有一个updated fiddle供您参考
kx1ctssn2#
因为
jQuery.next()
获取同级,所以您尝试获取的div是父级的同级,而不是同级。aoyhnmkz3#
$(this)是a元素,并且该元素没有兄弟。如果你需要div,使用parent: