只是我一直想知道的事情。在.addEventListener
方法的第二个参数中,您可以调用“(自定义)类方法”而不是函数吗?
即会像下面这样工作吗?
var object = new ClassName();
document.getElementById('x').addEventListener('click', object.method, false);
最佳答案
不,您所写的是行不通的,因为 method
将在没有 object
作为其上下文的情况下被调用。在 method
中,this
将被设置为发起事件的 DOM 元素。
如果要调用方法并保留上下文,请使用函数关闭 object
变量:
var object = new ClassName();
document.getElementById('x').addEventListener('click', function () {
object.method()
}, false);
关于javascript - 是否可以使用 addEventListener 调用类方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21298918/