為什么oDiv.onmouseover后面要把startMove(100)寫在一個匿名函數里,而不是直接跟在等號后面?
為什么這樣寫運行不出來:
oDiv.onmouseover="startMove(100)";
oDiv.onmouseout="startMove(30)";
寫在匿名函數里才能運行:
? ? ? ? ? ?oDiv.onmouseover=function () {
? ? ? ? ? ? ? ?startMove(100)
? ? ? ? ? ?}
? ? ? ? ? ?oDiv.onmouseout=function () {
? ? ? ? ? ? ? ?startMove(30)
? ? ? ? ? ?}
2016-12-15
因為如果直接寫在等號后面,我們就無法為編寫的函數startMove()傳遞參數(100),也就是這個100是無法傳遞的,原因是事件處理函數是由系統調用的,系統調用的時候會傳入一個事件對象event參數。