Javascript 这两种绑定事件的方式怎么有一种无效呢,好奇怪

HTML:oDiv2在oDiv1里,startMove()函数确定没有问题(用来移动div)
这是有效的代码:
oDiv1.onmouseover=function(){
startMove(0,10);
}
oDiv1.onmouseout=function(){
startMove(-100,-10);
}
这是无效的:
oDiv1.addEventListener('mouseover',startMove(0,10),false);
oDiv1.addEventListener('mouseout',startMove(-100,-10),false);
慕容森
浏览 323回答 2
2回答

慕无忌1623718

element.addEventListener的第二个参数应该是个函数。无效方法里你传的是startMove的返回值,不是函数。

慕虎7371278

基于楼上补充,oDiv1.addEventListener('mouseover',function(){startMove(0,10)},false);oDiv1.addEventListener('mouseout',function(){startMove(-100,-10)},false);或者oDiv1.addEventListener('mouseover',startMove.bind(null,0,10),false);oDiv1.addEventListener('mouseout',startMove.bind(null,-100,-10),false);两种方式皆可
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript