我有一个对象,里面有一些方法。这些方法被放入匿名函数内的对象中。它看起来是这样的:
var t = {};
window.document.addEventListener("keydown", function(e) {
t.scroll = function(x, y) {
window.scrollBy(x, y);
};
t.scrollTo = function(x, y) {
window.scrollTo(x, y);
};
});
(有更多的代码,但这足以说明问题)
现在,我想在某些情况下停止事件侦听器。因此,我正在尝试做一个removeEventListener,但是我不知道怎么做。我在其他问题中读到,在匿名函数上调用removeEventListener是不可能的,但在这种情况下也是这样吗?
我在匿名函数中创建了一个方法,因此我认为这是可能的。看起来像这样:
t.disable = function() {
window.document.removeEventListener("keydown", this, false);
}
为什么我不能这么做?
有没有其他(好的)方法可以做到这一点?
额外的信息;这只需要在Safari中工作,因此缺少IE支持。
https://stackoverflow.com/questions/4950115
复制相似问题