過去に、ウィンドウにバインドすることにより、jQuery で非常に単純な pub/sub を実行しました。
// subscribe
$( window ).on("someEvent", function() { ... });
// publish
$( window ).trigger("someEvent");
しかし、私は最近、新しいコールバック機能について知りました。これは、jQuery で pub/sub を処理するための推奨される方法のようです。
ウィンドウにバインドするだけではなく、コールバックを使用する利点は何ですか? 上記のような単純なシステムの場合、Callback 機能を使用するのはやり過ぎですか?
編集:上記を一般的にどのように使用するかについて、もう少し情報があります...
これは、jQuery プラグインが相互に通信できるようにするために時々行うことです。たとえば、通信する必要がある独自のドラッグ アンド ドロップ可能なプラグインがあります。
ドラッグが開始、更新、および停止すると、ドラッグ可能なプラグインがウィンドウでカスタム イベントをトリガーします。ドロップ可能なプラグインはこれらのイベントを監視し、それに応じて反応します。
// in draggable
onStart: function() {
$( window ).trigger("dragger.start", [data]);
}
// in droppable
$( window ).on("dragger.start", function(event, data) {
...
});