Backbone.js - 将事件绑定到视图中的文档

时间:2011-11-03 14:15:40

标签: javascript jquery backbone.js

是否可以在视图中将事件处理程序(例如,在mouseup上)绑定到文档?

我想做这样的事情:

var someView = Backbone.View.extend({
    el: "#someDIV",

    initialize: function (options) { /* ... */ },

    events: {
        "mousedown" : "mousedownHandler", // on #someDIV
        "mouseup" : "mouseupHandler" // this should be on document (global mouseup)
    },

    mousedownHandler: function (e) { /* ... */ },
    mouseupHandler: function (e) { /* ... */ }
});

这是可能的,还是我必须在初始化时使用单独的jQuery事件绑定?或者如果有更好的方法可以做到这一点,那也会有效!

谢谢!

1 个答案:

答案 0 :(得分:3)

如果要添加的侦听器在逻辑上属于此视图,则必须执行普通的jQuery绑定。

你的另一个选择是有一个单独的视图,el:'body',在其上定义一个mouseup处理程序,这将适用于普通事件声明。但在你的情况下,我认为最好将mouseup和mousedown处理程序保持在同一个视图中,因为它们密切相关。

相关问题