レンダリングされるすべてのバックボーン ビューに対して、同じ DOM 要素を選択して何かを行う必要がありますか? 一度に存在するのは、このビューの 1 つのみです。
たとえば、特定のバックボーン View で Bootstrap のタブ (タブ可能なプラグイン) を使用する必要があるとしますProduct
。タブ可能なプラグインの初期化コードを関数に含めるのは正しいrender
ですか?
render: function() {
this.$el.html( this.template( this.model.toJSON() ) );
// Activate Twitter Bootstrap Tabs
$('.tab-bar').tab();
$('.tab-bar .tab:first').tab('show');
$('.tab-bar .tab').click(function(e) {
e.preventDefault();
$(this).tab('show'); });
return this;
}
または、このセレクターを一度だけ呼び出す方法はありますか?.tab-bar
まだ存在していないものを含むクラスを持つすべての要素に対して起動します。
同様に、最初のタブにクリック ハンドラーが必要な場合
$('.tab:first').click(function(){
console.log('hey!')'
}
そのビューのrender
関数に配置しますか? ビューが複数回レンダリングされると、多くのclick
イベントリスナーが作成されませんか?