0

完了すると、を介してイベントをトリガーするライブラリを使用しています$(document).trigger('playlistDone');。私はこのトリガーを聞いていますが、alert()期待しているものが得られません。

$(document).bind('playlistDone', function() {
   alert('done');
}); 

私は何が間違っているのですか?

4

2 に答える 2

1

まず、jQuery 1.7の時点で、イベントをアタッチするための推奨される方法はon、ではありませんbindhttp://api.jquery.com/on/を参照)。

次に、基本的な構文は問題ないように見えますが、ブラウザイベントではなく、カスタムイベントを処理していることを理解することが重要です。これは、ライブラリがイベントをトリガーするためにjQueryを使用している必要があることを意味します。そうでない場合、jQueryはイベントが発生したときにそれを検出しません。

于 2012-11-08T23:34:57.410 に答える
0

.on()を使用します。jQueryドキュメントから:

.on()メソッドは、jQueryオブジェクトで現在選択されている要素のセットにイベントハンドラーをアタッチします。jQuery 1.7以降、.on()メソッドはイベントハンドラーのアタッチに必要なすべての機能を提供します。

そのようなことを試してください:

$(document).on('playlistDone', function( a ) {
   alert( a );
}); 

var data = 'Done';
$(document).trigger('playlistDone', data );
于 2012-11-08T23:36:20.267 に答える