仅当单击包装元素时,才会单击jquery click事件

Sha*_*eKm 1 javascript jquery

我有以下html:

<ul class="treeList2">
<li class="topLevel marked checked"><div class="tlWrap clearfix"><input type="checkbox" checked="checked" class="checkbox"><strong>Level name here blah blah   <span>(3)</span></strong></div></li>
Run Code Online (Sandbox Code Playgroud)

...

<script type="text/javascript">
/*<![CDATA[*/
    $(function(){           

        $('.treeList2 li.topLevel .tlWrap').click(function(){
            alert(this);
        });
    });
/*]]>*/
</script>
Run Code Online (Sandbox Code Playgroud)

问题是,当我单击复选框(我不想要)时,会触发此问题.我只想在点击'div'时提醒(这个)(我这样做以便我可以更改div背景).谢谢

kar*_*m79 9

您可以阻止复选框上的click事件冒泡到父级,如下所示:

$('.checkbox').click(function(e){
    e.stopPropagation();
});
Run Code Online (Sandbox Code Playgroud)

你可以在这里试试.

http://api.jquery.com/event.stopPropagation/