2013-06-05 67 views
0

我有以下问题/难题: 我在Facebook的左上角创建类似于菜单的菜单(查找请求,收件箱,通知),我正在使用Backbone Marionette CompositeView中。 我遇到的问题是,当我点击一些项目时,我点击元素添加/删除css类,如何通知其他项目,他们需要删除css类,如果有它,在点击的ItemView不知道关于其他元素的存在。 我有一个解决方案:正确使用Backbone Marionette CompositeView

<script id="ulTemplate" type="text/template"> 
    <ul class="ulItem"> 
    </ul> 
</script> 
<script id="internal-Item" type="text/template">  
    <div class="<%= className %>"></div> 
</script>  
<div class="container"> 
</div> 

http://jsfiddle.net/omher/hQeuD/ ,但我不喜欢它/觉得是一个 你认为什么是正确的? 如果不是我如何通知其他元素单击了其他元素? 使用事件? 谢谢

回答

0

使用事件。见我的回答你的其他问题在这里:notifications/error handling in marionettejs

在你的榜样,每个div应该是一个项目视图,并在click应(例如)MyApp.trigger("div1:clicked")。然后,在您的控制器中,您需要

MyApp.on("div1:clicked", function(){ 
    // adapt the CSS classes of the parent element here 
}) 
+0

感谢您的帮助 –

相关问题