点击事件不在firefox - backbone中触发

时间:2012-06-26 05:16:25

标签: javascript backbone.js

我有以下观点:

App.HouseListElemView = Backbone.View.extend({
    tagName: 'li',
    events: {
        'click': function() {
            App.detailsRouter.navigate('details/' + this.model.id, true);     
        },
        'click .btn-compare': 'compare',
        'click .btn-compare > input': 'toggleCompare',
    },
   // more stuff here...
 });

列表中的第一个单击事件在safari和chrome中都会触发,但在firefox中则不会触发。我正在使用firefox 11.0。

我是否错误地宣布了我的活动?

1 个答案:

答案 0 :(得分:0)

是的,你做错了。执行以下操作,它应该可以正常工作

App.HouseListElemView = Backbone.View.extend({
    tagName: 'li',
    events: {
        'click': 'navigateTo',
        'click .btn-compare': 'compare',
        'click .btn-compare > input': 'toggleCompare',
    },
    navigateTo:function() {
            App.detailsRouter.navigate('details/' + this.model.id, true);
        },
   // more stuff here...
 });

并且click事件将被绑定到el视图的根。因此,请使用选定的'click #navigator':'navigateTo'

指定点击目标