Help us understand the problem. What is going on with this article?

jQueryでイベントの順番を入れ替える

More than 3 years have passed since last update.

プログラムを書いている中で、既存の登録済みのイベントの前に自分で実装したイベントを実行する必要があったので、そのやり方をメモとして書いてみた。
なるべくならこういうことがない方がいいけれど。

※注意

動作の保証は致しません。
参考程度に見て頂ければと思います。

書いたもの

HTML

<div>
  <button id="test" type="submit" name="button">ボタン</button>
</div>

JavaScript

// あらかじめ登録
$("button#test").on('click', function(){
  console.log("Hello");
});

// 入れ替えここから
var allEvents = $._data($('button#test').get(0), "events");
var clickHandler = allEvents.click[0].handler;
$("button#test").off('click', clickHandler);
$("button#test").on('click', function() {
  console.log("Hello World");
});
$("button#test").on('click', clickHandler);

結局は単純な入れ替えっぽくなった。

silverskyvicto
Salesforce Platform や Atlassian Product を使用しています。
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away