12

ドキュメントクリックイベントで、ターゲットがボタン要素の場合に返す方法

$(document).click(function(e){
    if(e.target.nodeName.toLowerCase() != 'button')

上記のコードは正しかったですか?

4

6 に答える 6

27

あなたがすることができるのは

$(document).click(function(e) {
  if ( $( e.currentTarget ).is( ":button" ) ) {
    // Do things
  }
});

:buttonの代わりになぜ使用するのbuttonですか?

そうすれば、それが<input type="button">OR<button>タグであるかどうか、およびボタンとしてレンダリングされる他の入力タイプを検出できるためです。
このセレクターの使用について不明な点がある場合は、:button セレクターのjQuery ドキュメントを確認してください。

于 2013-07-01T10:47:43.630 に答える
6

もっと早く :

$(this).is('button');
于 2013-07-01T10:48:00.483 に答える
4

.is() を使用して、指定された要素をセレクターに対してテストできます。

また、:buttonセレクターを使用してテストすることもできます。要素ボタンのみが必要な場合は、is('button')要素セレクターを使用できます。

$(document).click(function(e) {
  if ($( e.target ).is(":button")) {
    //check
  }
});
于 2013-07-01T10:50:37.240 に答える
2
$(document).click(function(e){
    if($(this).is('button')){
           //your codes..
    }

});
于 2013-07-01T10:47:56.887 に答える