addEventListener
私は、影響を受けない場所で
追加されたイベントハンドラーを認識しました$.trigger
。その質問の特別な理由は、外部ライブラリ (純粋な js のみ) を使用せずにいくつかのロジックを実装するいくつかの自己作成の html 要素があることです。現在、メイン プロジェクトでこれらのコントロールを使用したいと考えており、さらに jQuery などの外部ライブラリがあります。たとえば、変更イベントをトリガーしたい (思い出してください... イベントは で追加されますelement.addEventListener("event", function)
) with $(element).trigger("change")
.
結果:何も起こらなかった
次のようなコードを使用すると、イベントのみがトリガーされます。
event = document.createEvent("HTMLEvents");
event.initEvent("change", true, true);
event.eventName = 'change';
element.dispatchEvent(event);
反対側では...jQueryで追加されたイベントハンドラーも、カスタム作成されたイベントによってトリガーされます。
魔法の質問: なぜ??
次の jsfiddle に小さな例があります。http://jsfiddle.net/UYyXv/3/