Jquery切换停止工作

时间:2012-09-17 07:00:13

标签: jquery toggle

我有一个简单的切换,在点击时关闭菜单并在另一次点击时隐藏它。 (每个用户都有多个菜单,因此这段代码完美运行......它根据用户ID找到了正确的菜单....

$('.abutton').live('click',function(){
    var id = $(this).attr('id');

    $('#amenu'+id).toggle();
    return false;

});

这是html

<a class="abutton" id="17">Edit</a>
<ul id="amenu17" class="amenuc">
<li><a href="#" id="17"> Delete</a></li></ul>

现在,如果用户忘记关闭任何菜单,我添加了此代码,如果有人点击页面上的任何元素,该代码会关闭打开的下拉列表

$('html').click(function() {
     $('.amenuc').hide();
});

(例如,如果有人点击另一个“编辑”按钮或页面上的任何位置,则另一个)...但现在切换不起作用(它只是,如果你点击任何“编辑”按钮,它将会显示菜单,但如果再次单击相同的“编辑”按钮关闭它,它将不会关闭。

我的代码出了什么问题?还是我忘了什么?

1 个答案:

答案 0 :(得分:1)

试试这个:

$(document).on('click', function(event) {
     if (!$(event.target).hasClass('abutton')) {  
           $('.amenuc').hide(); 
     }
});