在addeventlistener函数中访问此变量

时间:2011-03-11 08:56:39

标签: javascript javascript-events

javascript类启动如下

var add = new Add('2');

在Add类中,构造函数被写为

add = function(a){       this.abc = a; }

现在,我有一个addEventListener函数,如下所示

div.addEventListener('mouseout',this.domouseout,false);

在“this.mouseout()”中,无法访问this.abc ..我可以在this.mouseout()

中访问''this.abc'

1 个答案:

答案 0 :(得分:0)

this指的是当前对象。在添加对象中,this将引用自身。在您的对象之外,this引用当前文档。这就是为什么this.abc并不意味着对象之外的任何东西。

首先,您可以在“domouseout”之前删除“this”来简化addEventListener

div.addEventListener('mouseout', domouseout, false);

然后,在domouseout()函数中,您可以使用abc获取obj.abc,其中obj是您的添加类的实例。