2013-10-30 40 views
0

這樣的:的onclick = Func鍵VS的onclick =函數()

<div><input id="Btn" type="button" value="click"/></div> 

window.onload = function(){ 
     var mBtn = documernt.getElementById('Btn'); 

     /* 1 */ 
     mBtn.onclick = func; 

     /* 2 */ 
     mBtn.onclick = function(){ 
      func(); 
     } 
    } 
    var func = function(){ 
     var name="FirstName"; 
     alert(name); 
    } 

什麼1和2之間的差異?謝謝!

+3

第一個將事件對象傳遞給func。第二個將不傳遞任何參數給func。 –

回答

0

在這裏,唯一的區別是:

/* 1 */ 
    mBtn.onclick = func; 

上面,我們使用引用函數名func是在其他地方聲明的函數的名稱。

/* 2 */ 
    mBtn.onclick = function(){ 
     func(); 
    } 

雖然在此,一個匿名函數function()被調用,您可以調用任何功能或任何代碼塊。

+0

我明白了,謝謝! – WinKi

+1

mBtn.onclick = func 是 mBtn.onclick = function(){ var name =「FirstName」; alert(name); } – WinKi

+0

@WinKi:是的,你是對的.. –