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

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

點擊回車選取當前li內容給title

看到那段:

if(event.keyCode==13){

for(var i=0; i<as.length;i++){

?as[i].style.background = '#fff';

}

title.innerHTML = as[index].innerHTML;

menu.style.display = 'none';

我看了好久都不明白為什么要用as[index]就能選到當前所在的li項,按我的代碼寫法的話,index的值應該只有繼承了開頭聲明的index=-1才對???

而如果我把as[index]改為as[i]放到for循環里面,無論我怎么選,最后都會選擇li的最后一項,搞不懂。

請大神指點!

正在回答

1 回答

因為i在這里是一個局部變量,變量i只在for循環里面存在。而title.innerHTML = as[index].innerHTML;這一句代碼是在for循環的外面,所以改為as[i]的話是找不到i這個變量的,也就無法定位選取li里的內容。

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

kelvinwong 提問者

這個我明白,我的意思是我假如改成as[i],然后放回循環里也是不行的。我主要的疑惑還是為什么要用as[index]就可以定位到當前選定的那項li
2016-03-25 回復 有任何疑惑可以回復我~
#2

慕仔7676644 回復 kelvinwong 提問者

我也是剛看沒多久的,但我認為,這里的i的作用并不是準確指定某個選項的具體位置,而是我這個數組里有多少個元素的總數。index之所以能夠指定位置是因為它本身的功能,index屬性可返回下拉列表中選項的索引位置。這是我結合鍵盤事件那三代碼重復看了幾次得出的結論,雖然不知道對不對,但是我覺得這樣的理解可以讓我稍微清楚一些...
2016-03-25 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

點擊回車選取當前li內容給title

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

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

幫助反饋 APP下載

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

公眾號

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