亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

第十章編程練習問題

window.onload?=?function(){
?????????????var?oTab?=?document.getElementById("tabs");
?????????????var?oUl?=?oTab.getElementsByTagName("ul")[0];
?????????????var?oLis?=?oUl.getElementsByTagName("li");
?????????????var?oDivs=?oTab.getElementsByTagName("div");

?????????????for(var?i=?0,len?=?oLis.length;i<len;i++){
?????????????????oLis[i].index?=?i;
?????????????????oLis[i].onclick?=?function()?{
?????????????????????for(var?n=?0;n<len;n++){
?????????????????????????oLis[n].className?=?"";
?????????????????????????oDivs[n].className?=?"hide";
?????????????????????}
?????????????????????this.className?=?"on";
?????????????????????oDivs[this.index].className?=?"";
?????????????????}
?????????????};
?????????}

這個里面的.index是什么含義?

正在回答

1 回答

.index是自定義的屬性,li標簽本身是沒有index屬性的;

樓主的代碼里?oLis[i].index?=?i;這句里用index存放了i值;

所以后面?oDivs[this.index].className?=?"";這里this.index才能拿到值;

你看下我寫的測試代碼

開始的時候index本來是未定義的

賦值之后才有了值;

<html>
<head>
????<script?type="text/javascript">
????????function?test(){
????????????var?oUl?=?document.getElementsByTagName("ul")[0];
????????????var?oLis?=?oUl.getElementsByTagName("li");
????????????alert(oLis[1].index);????????//這里出來的是undefined
????????????oLis[1].index?=?1;
????????????alert(oLis[1].index);????????//這里出來的是賦予的值
????????}
????</script>
</head>
<body>
????<input?type="button"?onclick="test()"?value="test">
????<ul>
????????<li>li1</li>
????????<li>li2</li>
????????<li>li3</li>
????</ul>
</body>
</html>



0 回復 有任何疑惑可以回復我~
#1

陳水 提問者

非常感謝!
2015-10-31 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
JavaScript進階篇
  • 參與學習       468832    人
  • 解答問題       22582    個

本課程從如何插入JS代碼開始,帶您進入網頁動態交互世界

進入課程

第十章編程練習問題

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號