for循環(huán)執(zhí)行順序
for(var i=0;i<oLis.length;i++){
??????????? oLis[i].index=i;
??????????? oLis[i].onclick=function(){
??????????????? alert(i);
??????????????? for(var j=0;j<oLis.length;j++){
??????????????????? oLis[j].className="";
??????????????????? oDivs[j].className="hide";
??????????????? }
??????????????? this.className="on";
??????????????? oDivs[this.index].className="";
??????????? }?????
}
這部分不明白,for循環(huán)是跳過oLis[i].onclick=function()執(zhí)行完了么,為什么第四行alert(i)彈出是3,i的最大值應(yīng)該是2啊,如果for循環(huán)是執(zhí)行完了,之后點(diǎn)擊選項(xiàng)卡是怎么進(jìn)入到for循環(huán)的onclick事件的?
2015-08-26
onclick 是一個(gè)事件
而事件是需要出發(fā)條件的,當(dāng)你點(diǎn)擊的時(shí)候,就觸發(fā)啦
至于為什么彈出的都是3?
按理來說應(yīng)該是2,那就要降到for的執(zhí)行順序
for( ①; ②; ③ ?){
????④
}
so,來模擬運(yùn)行下:?①,②,④,③ ,②,④,③ .....
故,①只會執(zhí)行一次,②④會執(zhí)行 n 次, ③會執(zhí)行 n+1 次