Javascript 这两种绑定事件的方式怎么有一种无效呢,好奇怪
PHP中文网
PHP中文网 2017-04-10 15:27:09
0
2
358

HTML: op2在op1里,startMove()函数确定没有问题(用来移动p)
这是有效的代码:

op1.onmouseover = function() {
    startMove(0, 10);
}
op1.onmouseout = function() {
    startMove(-100, -10);
}

这是无效的:

op1.addEventListener('mouseover', startMove(0, 10), false);
op1.addEventListener('mouseout', startMove(-100,-10), false);
PHP中文网
PHP中文网

认证高级PHP讲师

全員に返信(2)
刘奇

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

いいねを押す +0
巴扎黑

基于楼上补充,

op1.addEventListener('mouseover', function(){startMove(0, 10)}, false);
op1.addEventListener('mouseout', function(){startMove(-100,-10)}, false);

或者

op1.addEventListener('mouseover', startMove.bind(null,0, 10), false);
op1.addEventListener('mouseout', startMove.bind(null,-100,-10), false);

两种方式皆可

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート