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

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

還是覺得for(i=0;i<buttons.length;i++){ if(buttons[i].className=='on'){ buttons[i].className=''; break; } 這里有點難理解,這里的i會變嗎?每次調用的時候是怎么運行的呢

還是覺得for(i=0;i<buttons.length;i++){ if(buttons[i].className=='on'){ buttons[i].className=''; break; } 這里有點難理解,這里的i會變嗎?每次調用的時候是怎么運行的呢

正在回答

5 回答

自己在for語句后面設一個console.log(index);然后進入sources調控下代碼,看看代碼怎么運行自己就能看明白了,別人跟你說了半天也不知道說什么,代碼有何問題都可以自己去調控下看看怎么運行,還可以顯示代碼哪個地方錯誤!

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

因為每次只會有一個被選中,所以會依次遍歷,也就是用for循環,找到前一個被選中的小點點(button下的某個span),然后找到了,就將效果取消掉,也就是讓他不再有on這個類名,所以才會有if花括號里面的內容,能理解嗎


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

這個break是在if語句里,終止只是終止了if語句。如果把break移到if外,就是終止for循環了。應該是這樣吧

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

和尚洗頭用飄柔真

不,break終止循環
2018-10-14 回復 有任何疑惑可以回復我~

你說的這個我知道,要是i=0的時候,if的條件就成立,后面重復再調用這個函數,i的值會自增?還是說i還是為0?這個每次不都是調用一次就終止循環了嗎?輪播的效果怎么做到的不懂!

<script type="text/javascript">

window.onload=function(){

var container=document.getElementById('container');

var list=document.getElementById('list');

var buttons=document.getElementById('buttons').getElementsByTagName('span');

var prev=document.getElementById('prev');

var next=document.getElementById('next');

var index=1;

//滾動函數

function aa(x){

var nexLeft=parseInt(list.style.left)+x;

list.style.left=nexLeft+'px';

if(nexLeft<-3000){

list.style.left="-600px";

}

if(nexLeft>-600){

list.style.left="-3000px";

}

}

//小圓點切換函數

function bb(){

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

if(buttons[i].className=='on'){

buttons[i].className='';

break;

}

}

buttons[index-1].className='on';

}

next.onclick=function(){

if(index==5){

index=1;

}else{

index +=1;

}

bb();

aa(-600);

}

prev.onclick=function(){

if(index==1){

index=5;

}else{

index -=1;

}

bb();

aa(600);

}

}

</script>

?</head>


?<body>


<div id="container">

<div id="list" style="left: -600px;">

<img src="5.jpg" alt="1"/>

<img src="1.jpg" alt="1"/>

<img src="2.jpg" alt="2"/>

<img src="3.jpg" alt="3"/>

<img src="4.jpg" alt="4"/>

<img src="5.jpg" alt="5"/>

<img src="1.jpg" alt="5"/>

</div>

<div id="buttons">

<span index="1" class="on"></span>

<span index="2"></span>

<span index="3"></span>

<span index="4"></span>

<span index="5"></span>

</div>

<a href="javascript:;" id="prev" class="arrow">&lt;</a>

<a href="javascript:;" id="next" class="arrow">&gt;</a>

</div>


</body>


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

for 是個循環,循環的次數是根據bottons.length來定。for(初始化值; 初始值 < = 終止條件; 初始值自加或者自減)

初始化值沒變化一次,執行一次

{ if(buttons[i].className=='on'){ buttons[i].className=''; break; }

這個方法體類的內容,如果某一個buttons[i]的className為on,就刪除這個class。循環結束,即使初始值還沒到到終止條件循環也結束。

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

舉報

0/150
提交
取消

還是覺得for(i=0;i<buttons.length;i++){ if(buttons[i].className=='on'){ buttons[i].className=''; break; } 這里有點難理解,這里的i會變嗎?每次調用的時候是怎么運行的呢

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

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

幫助反饋 APP下載

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

公眾號

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