1. 程式人生 > >js中this.index使用

js中this.index使用

使用 當前 mage 技術 沒有 utf-8 語句 分享圖片 執行

技術分享圖片

上面圈出的那句沒有執行,因為this.index 是undefined,(也不能直接使用i取代this.index,原因是i不是變化的值,使用alert打印輸出的i值始終為3)

解決方式:在for語句執行時給當前lis[i]設置index值;

技術分享圖片

另一種寫法是: 其中將i作為函數參數傳入,此時的i是變化的;

技術分享圖片

例子:

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>無標題文檔</title>
<script>
window.onload=function(){
var aBtn = document.getElementsByTagName(‘input‘);
for(var i=0;i<aBtn.length;i++){
aBtn[i].index=i;
aBtn[i].onclick=function(){
alert(‘i:‘+i); //結果永遠為3
alert(‘this.index:‘+this.index); //結果:0,1,2
};
}
};
</script>
</head>
<body>
<input type="button" value="btn1" />
<input type="button" value="btn2" />
<input type="button" value="btn3" />
</body>
</html>

js中this.index使用