0

.has()セレクターを使用して、体に画像がある場合にのみキー コントロールを実行しようとしています。

これは私が現在試していることですが、うまくいきません。

if ($('body').has('img')){
   $(document).on('keyup', function (event) {
     if (event.which === 37) {
       console.log('test');
     }
   });
}
4

4 に答える 4

3

これを試して

if ($('body img').length) {
}
于 2013-09-26T13:05:17.113 に答える
1

プレーンセレクターを使用して画像があるかどうかを確認したい:

if ($('img').length) {
   $(document).on('keyup', function (event) {
     if (event.which === 37) {
       console.log('test');
     }
   });
}

ここにフィドルが働いています

于 2013-09-26T13:08:47.513 に答える
0

なぜだめですか:

$(document).on('keyup', 'body', function (event) {
    if($(this).find('img').length) {
       if (event.which === 37) {
           console.log('test');
       }
    }
});
于 2013-09-26T13:09:43.480 に答える
0

ハンドラを body 要素に登録しても問題がなく、画像の状態が動的である場合

$(document).on('keyup', 'body:has(img)', function (event) {
    if (event.which === 37) {
        console.log('test');
    }
});
于 2013-09-26T13:05:26.200 に答える