タグ

Javascriptとイベントハンドラに関するrizmhateのブックマーク (2)

  • 動的に追加されるDOM要素に対応する方法あれこれ - Qiita

    Chrome拡張を作っていると,最近のモダンなWebサイトが後から動的にDOM要素を追加してきて困ることがある.毎度対処方法をぐぐっているので,ここにまとめておく. 追加される要素にイベントハンドラを付加したい jQueryのonメソッドにselectorを渡すことで,あとから動的に追加された子要素に対してもイベントを発火することができる. liveメソッドでも同様のことが出来たが,1.7で廃止された. $("#parent").on("click", ".child", function(){ console.log("click");}); $("#parent").append("<span class='child'>Click Here</span>"); 要素が追加されたことそのものを検出する DOMNodeInserted: 非推奨 要素が追加されたときに発火するDOMNod

    動的に追加されるDOM要素に対応する方法あれこれ - Qiita
  • いげ太のブログ: [JavaScript] イベント上の this をめぐる攻防

    this といえば自分自身のインスタンスを参照するもの。OOP に染まったプログラマなら、そう理解しているのが普通だろう。しかし JavaScript において、this の参照先は実行されるコンテキストによって以下のように変化する。 イベント ハンドラ内では、イベントの発生源(イベント ソース)のオブジェクトを参照する。 オブジェクトのプロパティ内では、自分自身のインスタンスを参照する。 ここで重要なのは 1. の方が優先されるってこと。両方が成立する場合、つまりイベント ハンドラにインスタンス メソッドを指定した場合、当該メソッドに出現する this はイベントの発生源を指すということ。 さて注目すべきは、this がイベントの発生源を参照するのは、イベント ハンドラの内だけである点だ。イベント ハンドラから参照されるオブジェクト内では、それは適用されないのである。言い方を変えれば、イ

  • 1