我的网页上有一个“选项”按钮。当用户单击该按钮时,会出现一个小子菜单。
当我在该菜单之外单击时,它会关闭。到现在为止还挺好。
我的问题是,当我再次单击选项按钮(菜单可见时)时,菜单保持打开状态。它应该关闭。
这是管理“点击外部”功能的代码
$j(document).mouseup(function(e) {
var container = $j('.playlist-menu');
if (container.has(e.target).length === 0) {
container.hide();
}
});
和按钮上的事件
$j('#options').click(function() {
$j('.playlist-menu').toggle();
});
HTML结构:
<button id="options" class="float-left" title="Options" type="button">
<div class="playlist-menu display-none">
<ul>
...
</ul>
</div>
我不明白为什么当我第二次单击选项按钮时它没有关闭,该按钮的 e.target 不是“播放列表菜单”,那么为什么菜单没有关闭?
谢谢