第十章編程練習(xí)問(wèn)題
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?=?""; ?????????????????} ?????????????}; ?????????}
這個(gè)里面的.index是什么含義?
2015-10-30
.index是自定義的屬性,li標(biāo)簽本身是沒(méi)有index屬性的;
樓主的代碼里?oLis[i].index?=?i;這句里用index存放了i值;
所以后面?oDivs[this.index].className?=?"";這里this.index才能拿到值;
你看下我寫(xiě)的測(cè)試代碼
開(kāi)始的時(shí)候index本來(lái)是未定義的
賦值之后才有了值;