ここではバックボーンを使用していますが、バックボーン以外のサイトでもこの問題が発生しています。
基本的に、私の問題は、1つのjavascriptファイルbase.jsで、いくつかの「グローバル」jquery関数を定義することです。次に、新しい要素をロードし、Backbone、AJAX、または任意の非同期呼び出しを使用してページに追加します。これは、新しいオブジェクトがページロードで宣言したjQueryイベントにリンクされていないように見えることを除いて、うまく機能します。(ここでは素人の言葉で申し訳ありません-私は適切な言葉遣いの初心者であることがよくあります)
たとえば、pageloadにロードされたjsファイルで宣言するとします。
$('.element').hover(function(){alert('hi world')});
しかし、ページの読み込み後に新しい要素を追加すると、このホバーは機能しません。
誰でも説明できますか:
- なぜですか?
- すでに宣言されている現在のイベントを処理/リッスンするように、新しく追加された要素を強制できるかどうか。
(2)は不可能かもしれない(追加後にイベントを書き直さなければならない)と思うが、何らかの解決策があるかどうか知りたい。