-2

下面是將事件偵聽器添加到我的html中的所有按鈕元素的代碼。結果 - 沒有註冊的事件列表,也沒有錯誤。爲什麼我無法將事件列表分配給按鈕?

window.onload = function(){ 
    addEvListeners(); 
    // This function is to assign ELs to buttons in my HTML 
    function addEvListeners(){ 
     var target = document.getElementsByTagName("button"); 
     for (i = 0; i <= target.length - 1; i ++){ 
      target[i].addEventListener("click", function(){model();},false); 
     } 
    } 
    function model(){ 
     return true; // just for placeholder 
    } 
} 
+0

你怎麼知道它不起作用?被調用的函數返回true。沒有記錄。 BTW'我<= target.length - 1'可以替換爲'i

+2

不知道什麼是「不工作」,但我看到的一件事是,您應該在for循環中刪除'i ++'之間的空格。 –

+0

你怎麼知道,它所做的只是返回'true'? – adeneo

回答

0
<html> 
    <head> 
     <script> 
      window.onload = function(){ 
       addEvListeners(); 
       // This function is to assign ELs to buttons in my HTML 
       function addEvListeners(){ 
        var target = document.getElementsByTagName("button"); 
        for (i = 0; i <= target.length - 1; i ++){ 
         target[i].addEventListener("click", function(){model();},false); 
        } 
       } 
       function model(){ 
        console.log('yo!'); 
       } 
      } 
     </script> 
    </head> 
    <body> 
     <button>Click Me</button> 
    </body> 
</html> 

這爲我工作。我最終在我的控制檯中得到了一個喲。 onload可能不存在您的按鈕元素嗎?

相關問題