バックボーンを使用して動的に作成された要素にイベントをバインドするのに問題があります。
要素を生成したバックボーンビューのコードは次のとおりです。('。モーダル')
var MakeModalView = Backbone.View.extend({
el: '#btn-make-modal',
events: {
'click': 'makeModal'
},
makeModal: function () {
$('body').html('<div class="modal"><div class="modal-close">×</div>Close me! I\'m a modal!</div>');
}
});
new MakeModalView();
動的に作成された要素を制御するビューは次のとおりです。
var ModalView = Backbone.View.extend({
el: '.modal',
events: {
'click .modal-close': 'closeModal'
},
closeModal: function () {
this.$el.remove();
}
});
new ModalView();
私が抱えている問題は、動的に作成された要素(ModalView)を制御するビューが、その動的要素にイベントをバインドしていないことです。('。モーダル')
バックボーンで動的に作成された「el」に要素をバインドするにはどうすればよいですか?
私は次の解決策を見てきました:
バックボーン動的に作成された「el」イベントをバインドしない
動的に作成された「el」を使用してバックボーンビューをどのように作成しますか?
しかし、動的要素にイベントをアタッチする方法をまだ理解していないようです。
この動作がどのように機能するかを示すために、フィドルを作成しました。http://jsfiddle.net/6wzzk/3/