ここに変数を使用できるかどうかはわかりません。組み込みイベントメソッド(documentationを参照)を使用してカスタムリスナーを追加した後、window.parent.document
にイベントリスナーを追加して、カスタムイベントをトリガーすることができます(Events.triggerメソッドを使用)。
app.views.Selfcare = Backbone.View.extend({
initialize: function() {
_.bindAll(this, 'render', 'closeWindow');
if(this.options.clickTarget) {
this.options.clickTarget.addEventListener('click', this.closeWindow, false);
}
},
render: function() {
// Render to the DOM here
return this; // as per Backbone conventions
},
closeWindow: function() {
// Stuff here
}
});
// Usage:
var mySelfcare = new app.views.Selfcare({
clickTarget: window.parent.document
});
私はそれが動作するはずだと思う。(あなたがそれを行うにはしたくない場合を除き)完全にバックボーンからこのイベントを分離するためにはるかに容易に、かつaddEventListenerをルートを下るだろう、と述べた
私はそれをテストしていませんが(1つまたは2つの構文上の誤りがあるかもしれません)
ニース。私は次の時間にこれを試してみて、あなたに伝えます。ありがとう。 – Flyingbeaver
@Flyingbeaver私は愚かな例へのリンクで自分の答えを更新しました。がんばろう! :) – kubetz
完璧に働いて、thx! – Flyingbeaver