我创建了一个像这样的类:
function MyClass()
{
var myInt = 1;
}
MyClass.prototype.EventHandler = function(e)
{
alert(this.myInt);
}
不幸的是,this
是触发的事件(在我的例子中是<a>
标签),并且我无法访问类属性。
有什么建议么?
这取决于您在注册事件时如何提供事件处理程序。
下面的代码
element.addEventListener("click", myObject.EventHandler);
不会做你想做的事。
Javascript 不像 C# 那样处理委托,因此 myObject.EventHandler 不是为 myObject 调用的 EventHandler 方法。
如果您想调用对象上的方法作为事件处理程序,最好的方法是将其包装到函数中。
element.addEventListener("click", function(event)
{
myObject.EventHandler(event);
});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)