32

<p>text</p>ユーザーがdiv内をクリックした場合、.clickは何もしないようにします。それ以外の場合は、div.clickを機能させます。

HTML:

<div>
    <span>yes</span>
    <p>text</p>
</div>

Jquery:

<script>
$(document).ready(function() {

    $("div").click(function() {

        alert("woohoo!");

    }); 

});
</script>
4

3 に答える 3

97
   $("div").click(function(e) {
        if($(e.target).is('p')){
            e.preventDefault();
            return;
        }
        alert("woohoo!");
    }); 

クリックのターゲットを確認してください。このようにして、別のイベントをバインドする必要はありません。

于 2012-05-18T02:41:29.723 に答える
2
<script>
$( document ).ready(function() {
    $( "div :not(p)" ).click(function( event ) {
        alert( "woohoo!" );
    }); 
});
</script>

<div>これは、コンテナの子としてテキスト ノードを気にしないことを意味します。

于 2012-05-18T03:15:45.103 に答える
-2
$("div > span").click(function() {

    alert("woohoo!");

}); 

ただし、html要素のIDを指定することをお勧めします。

于 2012-05-18T02:41:55.720 に答える