私はブートストラップアコーディオンパネルを使用しており、親にpanel
のクラスを追加したいと考えています。panel-collapse
です。Marionette - 親にクラスを追加するItemView tagname
基本的には、ここで
if (child element) hasClass('panel-collapse.in') {
this.addClass('open')
} else {
this.removeClass('open')
}
が私のjsの抜粋であるだけでなく、私はコードが働くだろうと思ったかの盲目の目に行く:
return Marionette.ItemView.extend({
tagName: 'li',
className: "panel panel-default",
template: panelTpl,
events: {
...
'click .panel-collapse': '_panelChange',
},
_panelChange: function() {
if(element.has('div.in').length != 0) {
element.addClass('open');
console.log('panel opened fool');
} else {
element.removeClass('open');
console.log('panel closed fool');
}
},
私が提供するこのソリューションを追いましたここに:Using jquery on Marionette itemView to addClass to this.$el
しかし、役に立たない。
events
とmodelEvents
の間に違いはありますか?
はい、ビューのイベントとモデルの間に差がある私は、私はそれが書かれるべきかを正確に私のコードを入れて、または必要がある場所を正確にわからないのですが、私はそれがevent