简体   繁体   English

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

[英]Preventing click event in div that is inside of li element

I've been searching for a while for answer but nothing really helped me in my problem. 我一直在寻找答案,但是在解决我的问题上没有任何帮助。 I have div inside and li element (to position in at the bottom of that li element). 我内部有div和li元素(位于li元素的底部)。 I've made some functions to show and hide that div when user clicks on that li element, but I want to stop hiding it when it is clicked (not a li element). 我已经做了一些函数来在用户单击该li元素时显示和隐藏该div,但是我想在单击它时停止隐藏它(不是li元素)。

Here are my functions: 这是我的功能:

$(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");     
    }
}

Is there a way to do something like that? 有没有办法做这样的事情? I'v been searching for few hours already and didn't find any good solutions. 我已经搜索了几个小时,却找不到任何好的解决方案。 Thanks for any help. 谢谢你的帮助。

您正在寻找event.stopPrapagation()

你试过了吗

e.stopPropagation()

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM