輪播圖過一會兒就會自己變得速度很快。。。具體請看代碼。。。
我寫的代碼沒用箭頭控制和焦點控制。直接自動播放的??墒菫槭裁催^一會兒播放速度就會很快呢????
代碼如下:
? window.onload=function(){
?var img=document.getElementById("img");
?var list=document.getElementById("list");
?
/*var prev=document.getElementById("prev");
var next=document.getElementById("next");*/
?var timer;
var animated=false;
? function animate(offset){
animated=true;
var newLeft = parseInt(list.style.left) + offset ;
var time=300;
var interval=10;
var speed=offset/(time/interval);
function go(){
if((speed<0 && parseInt(list.style.left)> newLeft)||(speed>0 && parseInt(list.style.left)< newLeft)){
list.style.left=parseInt(list.style.left)+speed+'px';
setTimeout(go,interval);
}else{
animated=false;
list.style.left=newLeft+'px';
? ? ? ?if( newLeft >-1366){
? ? ? list.style.left = -5464 + 'px';}
? ?if( newLeft < -5464){
? ? ?list.style.left = -1366 + 'px';
? ? ? ?}
}
? ?}
? go();
} //無限滾動
function play(){
timer=setInterval(function(){
animate(-1366);
},2000);
?}//自動播放
function stop(){
clearInterval(timer);
}
/*next.onclick=function(){
animate(-1366);
}
prev.onclick=function(){
animate(1366);
}//箭頭控制*/
list.onmouseover=stop;
list.onmouseout=play;
play();
}
2015-10-03
你無限滾動的時候沒有清除時鐘。