我在下面有一个简单的函数,它在单击元素时隐藏或显示 DIV。但是,它在一次鼠标单击时运行了两次。我使用 firebug 在几个断点处停止代码,当最后一个函数 (slideToggle) 完成时,它会返回到 click 函数的开头并再重复一次。这意味着要显示的元素仍然隐藏,因为它再次隐藏在 slideToggle 上。
$('#showEmailHistory').click(function() {
$('#emailHistory').siblings().slideUp();
$('#emailHistory').slideToggle();
event.stopPropagation();
});
我放置了一个 event.stopPropagation(); 作为解决此问题的临时措施。但我真正想知道的是是什么导致它重新运行?没有其他事件链接到元素#showEmailHistory。
链接到点击的元素是一个简单的 div。
<div id="showEmailHistory" class="button">Show Email History</div>
我想展示的元素是一个简单的 div。
<div id="emailHistory">
Content
</div>