Javascript迴圈綁定事件 web前端開發部落格:http://www.css88.com/

來源:互聯網
上載者:User

1.這是Mr.Lodar的方法:
XML/HTML代碼
<!DOCTYPE html PUBLIC ”-//W3C//DTD XHTML 1.0 Transitional//EN” ”http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”>      
<html xmlns=“http://www.w3.org/1999/xhtml” >      
<head>      
    <title>Untitled Page</title>      
</head>      
<body>      
<ul id=“list”>      
<li>第1條記錄</li>      
<li>第2條記錄</li>      
<li>第3條記錄</li>      
<li>第4條記錄</li>      
<li>第5條記錄</li>      
<li>第6條記錄</li>      
</ul>      
<script type=“text/javascript”>          
    var list_obj = document.getElementById(“list”).getElementsByTagName(“li”); //擷取list下面的所有li的對象數組       
    for (var i = 0; i <= list_obj.length; i++) {       
        list_obj[i].onmousemove = function() {       
            this.style.backgroundColor = “#cdcdcd”;       
        }       
        list_obj[i].onmouseout = function() {       
            this.style.backgroundColor = “#FFFFFF”;       
        }       
        list_obj[i].onclick = new function(n) {   
           return function(){alert(“這是第” +(n+1)+”條記錄”);}   
        }(i);   
       
    }       
</script>      
</body>      
</html>  
2.這是freecat 的方法:
freecat Publish at 2008-10-14 17:15:35
這樣更好,閉包是難,但不是你想象那樣
 
JavaScript代碼
<script type=“text/javascript”>    
var list_obj = document.getElementById(“list”).getElementsByTagName(“li”); //擷取list下面的所有li的對象數組    
for (var i = 0; i <= list_obj.length; i++) {    
(function(){    
var p = i   
list_obj[i].onmousemove = function() {    
this.style.backgroundColor = “#cdcdcd”;    
}    
list_obj[i].onmouseout = function() {    
this.style.backgroundColor = “#FFFFFF”;    
}    
list_obj[i].onclick = function() {    
alert(“這是第” + p + “記錄”);    
}    
})()    
}    
</script>  

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.