?為什么實(shí)現(xiàn)不了,求大神幫助,謝謝
window.onload = function(){
var container = document.getElementById('container');
var list = document.getElementById('list');
var prev = document.getElementById('prev');
var next = document.getElementById('next');
var buttons = document.getElementById('buttons').getElementsByTagName('span');
var index = 1;
var animated = false;
function showButton(){
for(var i = 0;i < buttons.length;i++){
buttons[i].className='';}
buttons[index-1].className='on';
}
function move(offset){
? ? animated = ture;
var newleft =parseInt(list.style.left) + offset;
var time = 300;
var jgtime = 10;
var distance = offset/(time/jgtime);
? ? var go=function(){
if((distance>0&&parseInt(list.style.left)<newfelt)||(distance<0&&parseInt(list.style.left)<newleft)){
list.style.left = parseInt(list.style.left) + distance + 'px';
setTimeout(go,jgtime);}
else{
list.style.left = newleft + 'px';
if(newleft<-6000){list.style.left = -1200 + 'px';}
if(newleft>-1200){list.style.left = -6000 + 'px';}
animated = false;
}
}
go();
}
function ?play(){var timer;
timer=setTimeout(function(){next.onclick;play();},3000)}
function stop(){clearTimeout(timer);}
prev.onclick = function(){
move(1200);
? if(index==1){index=5;}
? ? ? ? else{index = index - 1;}
showButton();
}
next.onclick = function(){
move(-1200);
if(index==5){index=1;}
? ? ? ? else{index = index + 1;}
showButton();
}
for(var i = 0;i<buttons.length;i++){
buttons[i].onclick = function(){
? ?if (animated) {return;}
var myindex=parseInt(this.getAttribute('index'));
var offset = -1200*(myindex-index);
move(offset);
index = myindex;
showButton();
}}
container.onmouseover = stop;
container.onmouseout = play;
2018-07-04
定時(shí)器的代碼:timer=setTimeout(function(){next.onclick;play();},3000)} 應(yīng)該為?
timer = setInterval(function(){
next.onclick();
},3000)
2018-06-25
if((distance>0&&parseInt(list.style.left)<newfelt)||(distance<0&&parseInt(list.style.left)<newleft)){這句代碼寫錯(cuò)了。newfelt應(yīng)該是newleft
2018-05-29
我看到的問題有:paly函數(shù)沒有調(diào)用,timer變量定義為局部變量這兩個(gè)地方有錯(cuò)。其他的沒細(xì)看。你自己自對(duì)比下代碼吧。
/**=================焦點(diǎn)輪播圖================**/
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;
var animated = false;
var? timer;
function showButton(){
for(var i=0;i<buttons.length;i++){
if(buttons[i].className == 'on'){
buttons[i].className = '';
break;
}
}
buttons[index-1].className = 'on';
}
// next.onclick = function(){
// list.style.left = parseInt(list.style.left) - 600 +'px';
// }
// prev.onclick = function(){
// list.style.left = parseInt(list.style.left) + 600 +'px';
// }
function animate(offset){
animated = true;
var newLeft = parseInt(list.style.left)+ offset;
var time = 300;//位移總時(shí)間
var interval = 10;//位移間隔時(shí)間
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 > -600){
list.style.left = -3000 +'px';
}
if(newLeft < -3000){
list.style.left = -600 +'px';
}
//debugger;
}
}
go();
}
function play (){
timer = setInterval(function(){
next.onclick();
},3000)
}
function stop(){
clearInterval(timer);
}
next.onclick = function(){
if(index == 5){
index = 1;
}else{
index += 1;
}
showButton();
if(!animated){
animate(-600);
}
}
prev.onclick = function(){
if(index == 1){
index = 5;
}else{
index -= 1;
}
showButton();
if(!animated){
animate(600);
}
}
for(var i = 0;i < buttons.length ;i++){
buttons[i].onclick = function(){
if(this.className == 'on'){
return;
}
var myIndex = parseInt(this.getAttribute('index'));
var offset = -600 * (myIndex - index);
if(!animated){
animate(offset);
}
index = myIndex;
showButton();
}
}
container.onmouseover = stop;
container.onmouseout = play;
play();
}