還是覺得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會變嗎?每次調用的時候是怎么運行的呢
2017-03-13
自己在for語句后面設一個console.log(index);然后進入sources調控下代碼,看看代碼怎么運行自己就能看明白了,別人跟你說了半天也不知道說什么,代碼有何問題都可以自己去調控下看看怎么運行,還可以顯示代碼哪個地方錯誤!
2017-02-28
因為每次只會有一個被選中,所以會依次遍歷,也就是用for循環,找到前一個被選中的小點點(button下的某個span),然后找到了,就將效果取消掉,也就是讓他不再有on這個類名,所以才會有if花括號里面的內容,能理解嗎
2015-12-25
這個break是在if語句里,終止只是終止了if語句。如果把break移到if外,就是終止for循環了。應該是這樣吧
2015-10-25
你說的這個我知道,要是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"><</a>
<a href="javascript:;" id="next" class="arrow">></a>
</div>
</body>
2015-10-25
for 是個循環,循環的次數是根據bottons.length來定。for(初始化值; 初始值 < = 終止條件; 初始值自加或者自減)
初始化值沒變化一次,執行一次
{ if(buttons[i].className=='on'){ buttons[i].className=''; break; }
這個方法體類的內容,如果某一個buttons[i]的className為on,就刪除這個class。循環結束,即使初始值還沒到到終止條件循環也結束。