防止在li元素内部的div中的click事件

时间:2018-05-04 21:21:06

标签: javascript jquery events

我一直在寻找答案,但在我的问题上没有任何帮助我。 我有div里面和li元素(位于那个li元素的底部)。 当用户点击那个li元素时,我已经制作了一些显示和隐藏div的函数,但是我想在点击它时停止隐藏它(不是li元素)。

以下是我的功能:

$(document).ready(function() {
    $("#panel-user-item").click(function( e ){
        e.preventDefault();
        toggleUserPanel();
    });

    /*$(document).mouseup(function(e)
    {
        var subject = $("#panel-user-panel"); 

        if(e.target.id != subject.attr('id') && !subject.has(e.target).length)
        {
            subject.hide(300);
            subject.addClass("hide");
        }
    });*/

});

function toggleUserPanel()
{
    if(!$("#panel-user-panel").hasClass("hide"))
    {
        $("#panel-user-panel").hide(300);
        $("#panel-user-panel").addClass("hide");
    }
    else
    {
        $("#panel-user-panel").show(300);
        $("#panel-user-panel").removeClass("hide");     
    }
}

有没有办法做那样的事情?我已经搜索了几个小时,但没有找到任何好的解决方案。谢谢你的帮助。

2 个答案:

答案 0 :(得分:1)

event.stopPrapagation()正是您要找的。

答案 1 :(得分:1)

你试过吗

e.stopPropagation()