關于循環的問題
? oLis[i].onclick = function() {
? ? ? ? ? ? ? ? ? ? ?for(var i= 0;i<oLis.length;i++){
? ? ? ? ? ? ? ? ? ? ? ? ?oLis[i].className = "";
? ? ? ? ? ? ? ? ? ? ? ? ?oDivs[i].className = "hide";
oLis[i].index = i;
? ? ? ? ? ? ? ? ? ? ?}
? ? ? ? ? ? ? ? ? ? ?this.className = "on";
? ? ? ? ? ? ? ? ? ? ?oDivs[this.index].className = "";
? ? ? ? ? ? ? ? ?}
? ? ? ? ? ? ?};
這樣寫為什么不行???跟下面的正確的 有什么不同???
? ? ? ? ? ? ?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 = "";
? ? ? ? ? ? ? ? ?}
? ? ? ? ? ? ?};
2016-01-29
答案里的最外層的循環:1、強制給數組中的每個對象一個索引,這樣鼠標經過的時候才能獲取經過的是哪個<li>;2、給每個?oLis[i].onclick定義一個dom事件
2016-01-29
你把oLis[i].index = i;這句放在循環中沒有意義,這個循環是把div隱藏的,并不能通過這個i知道該顯示哪個