我有一些看起来像这样的代码
myApp.module(args, function(args){
Views.MainView = Marionette.ItemView.extend({
//template, tagName, className
down: false,
events: {
"click .barClassName": "rollUp"
},
rollUp: function(){
if(this.down){
$(".dropDownDivClass", this.$el).slideUp(200);
this.down = false;
}
}
});
});
基本上我的页面顶部有一个导航栏,每个项目都有一个相关的下拉菜单。我已经成功实现了代码以使菜单下拉,但是如果我点击其他项目,我希望它们可以向上滑动。 (此ItemView对象在导航栏中的项目上。)对此的任何帮助都会很棒! 感谢
答案 0 :(得分:0)
尝试将动画移动到onClose(),或者可能需要onBeforeClose()。
onClose: function() {
this.$el.slideUp(200);
}
假设您控制此ItemView的其他代码正在使用Marionette的show()来替换显示哪一个。如果是这样,之前的视图将在被新视图替换之前关闭。因此,如果视图已关闭,您不需要保留标记。
除非我完全误解你是如何进行此设置的。发布使菜单下拉的其余代码可能很有用。