バックボーン・ビューでイメージの「onload」イベントを添付したいとします。私は現在、 "イベント"に "load img": "function"として含めていますが、解雇されていません。backbonejsビューを使用して、 "onload"イベントを画像タグに添付する最も良い方法は何ですか?
これにはどのような提案がありますか?
バックボーン・ビューでイメージの「onload」イベントを添付したいとします。私は現在、 "イベント"に "load img": "function"として含めていますが、解雇されていません。backbonejsビューを使用して、 "onload"イベントを画像タグに添付する最も良い方法は何ですか?
これにはどのような提案がありますか?
バックボーンのイベント処理は、delegate
とdelegate
に基づいており、バブルのイベントでのみ使用できます。問題は、ロードイベントがバブルにならないことです。 HTML5 specificationから:
ダウンロードが完全に利用可能な状態に
img
要素を設定し
成功した場合は、適切な画像のプレゼンテーションを更新し、img
要素でload
という名前のシンプルなイベントを発出。
そしてsimple eventないバブル:電子という名前のシンプルなイベントを発射
は(特に明記しない場合を除く)バブルのない名前電子、とそのイベントを意味し、 [...]
このように手でハンドラーを接続する必要があります:
render: function() {
var self = this;
this.$el.append(some_html_with_img_elements);
this.$el.find('img').on('load', function() { self.img_loaded() });
return this;
}
パーフェクト!それが助けになりました。はい、jqueryの "on"メソッドを使用している間、イベントバブリングの問題に気付きました。バックボーンが別のロジックを実装しているのではないかと疑問に思っていました。しかし、私はまだ「単純な出来事」については知らなかった。答えをありがとう – KD12