我有以下html结构:
<em class="help fa fa-question-circle text-muted"></em>
<div class="help-wrapper"></div>
当使用以下JS时,我认为它会没事,但它不起作用。没有错误或任何事情,只是不起作用。
$('.help').on('click', function () {
$(this).closest('.help-wrapper').fadeToggle(300);
});
答案 0 :(得分:4)
在上下文中使用next
或siblings
$('.help').on('click', function () {
$(this).next('.help-wrapper').fadeToggle(300);
});
或
$('.help').on('click', function () {
$(this).siblings('.help-wrapper').fadeToggle(300);
});
答案 1 :(得分:3)
closest()
遍历向上 DOM树,因此任何匹配都是this
的祖先。
您需要next()
:
$(this).next('.help-wrapper').fadeToggle(300);
答案 2 :(得分:2)
Closes遍历树,它在siblings
上不起作用
在您的情况下,您可以使用
$(this).siblings('.help-wrapper').fadeToggle(300);