タスクはこの投稿と同じ です。リンクのクリックをキャプチャし、ブラウザのデフォルトの動作を防ぎます。そこで出された答えはこうでした。
テンプレート:
<a on-click='sayHello' href="#">Activate!</button>
JS:
ractive.on( 'sayHello', function ( event ) {
event.original.preventDefault();
alert( 'Hello world!' );
});
問題は、sayHello
イベント ハンドラーが元のイベントが何であったかを認識できないことです。プロキシの要点は、イベント ハンドラが元のイベントのタイプを気にする必要がないことです。たとえば、リンクをボタンに変更すると、preventDefault
.
したがって、私の質問は、イベント プロキシを起動する前または後に preventDefault を呼び出す方法です。
適切な解決策は、複数のイベント プロキシを連続して起動することです (可能であれば)。
テンプレート:
<a on-click='preventDefault;sayHello' href="#">Activate!</button>
J:
ractive.on( 'preventDefault', function ( event ) {
event.original.preventDefault();
});
ractive.on( 'sayHello', function ( event ) {
alert( 'Hello world!' );
});
これはどういうわけか可能ですか?または、他の良い解決策はありますか?