on.(“click” で設定されたイベントを取得、処理を挿入し、再設定する
こちらの記事を参考にさせて頂きました。
Check! jQuery ですでに登録されているイベントを取得し、割込ませたりするメモ
next が上手く動作出来なかったので下記の形で再設定しました。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
// クリックイベントに設定されたハンドラを取得する var events = $._data($("#element").get(0), "events"); var originalHandler = events.click[0].handler; // 元のクリックイベントを外す $("#element").off("click", originalHandler); // 処理を挿入する $("#element").on("click", function(){ alert("処理を追加しました"); }); // 元の処理を再設定する $("#element").on("click", originalHandler); |
※私が next で動かなかった理由は
元の処理の中にthisが使われていたからのようでした。