10

カスタム イベント ハンドラーをbodyjQuery のreadyメソッドにアタッチしています。
その後、すぐtriggerにカスタム イベントを実行しましたが、何も起こらないようです。

$(function(){
    $("body").on("test", function(){ alert("test triggered"); }
    $("body").trigger("test");
}
4

2 に答える 2

6

まず、構文エラーがあります

$(function(){
    $("body").on("test", function(){
        alert("test triggered");
    });  < ---- Missing this
    $("body").trigger("test");
});

次に、コンソールからイベントをトリガーすることはできません$(function() {}); 。クロージャーを形成し、それらの内部のメソッドにアクセスできないためです。

期待どおりに動作させるには、スクリプト ファイルにデバッグ ポイントを配置してから、イベントのトリガーを試みます。イベントが範囲内にあるため、現在は機能しています。

于 2013-06-19T23:49:24.610 に答える
4

コードが正しくフォーマットされていないようです。デバッグ コンソールをチェックして確認します。

これを試すことができます:

$(function(){
    $("body").on("test", function(){
        alert("test triggered");
    });
    $("body").trigger("test");
}
于 2013-06-19T23:46:46.797 に答える