2011-02-27 55 views
0

我tryed一些听众添加到现有的div元素的Javascript:添加onclick属性DOM

 //Prepare div 
     $(this.div).css("z-index","256"); 
     $(this.div).attr("onmouseover",this.myname+".resize();"); 
     $(this.div).attr("onmousedown",this.myname+".resize();"); 
     $(this.div).attr("onmouseout","if("+this.myname+".sized)"+ this.myname+".resize();"); 

,但在IE和Chrome事件只是不被解雇,而它仍然 被添加到元素属性。 Firefox按预期工作。

有人知道最新的错吗?

谢谢

+4

什么Javascroüz? – BoltClock 2011-02-27 18:42:41

+0

你真的应该使用jquery自己的evenhandling('.hover()'),而不是添加到属性。 – JohnP 2011-02-27 18:45:44

回答

4

不要将事件设置为字符串。
相反,你应该使用jQuery的bind方法:

var me = this; //Inside the handlers, this is the element. 

$(this.div).bind('mouseenter mousedown mouseleave', function() { 
    me.resize(); 
}); 
+0

@Mereep - 同样你不需要为了做到这一点而创建4个jQuery实例。使用*方法链*。 – galambalazs 2011-02-27 18:53:40