0

jQuery関数の「.trigger('play')」と「.play()」の違いが気になるところです。ナビゲーション ボタンを押したときに Web サイトでサウンドが再生されるようにします。HTML5タグの音だと思われます。

このjQueryコードを使用すると機能します:

$('nav ul li a').click(function(){
    $('#soundFX').trigger('play');
});

しかし、これではありません:

$('nav ul li a').click(function(){
    $('#soundFX').play();
});

答えてくれてありがとう!

4

2 に答える 2

3

Play は jQuery メソッドではなく、DOM 要素の関数です。したがって、次のように Dom 要素自体でそれを呼び出す必要があります。

       document.getElementById('soundFX').play();

jQuery オブジェクトでトリガー メソッドを呼び出すと、その要素でネイティブ イベントがトリガーされます。この場合、jQuery セレクターによって選択された要素のネイティブ play メソッドがトリガーされます。それが役立つことを願っています。R.

于 2013-08-18T10:27:05.140 に答える
1

ハンドラーが 2 回呼び出される.trigger('play')原因になることに気付きましたが、 1 回しか発生しません。play.play()

デモ

于 2015-11-12T08:21:21.420 に答える