慕运维8689091
2016-07-22 08:22
window.onload=function()
{
var oDiv=document.getElementById('roll');
var oImg=oDiv.getElementsByTagName('img');
var oUl=document.getElementById('ul');
var btnLeft=document.getElementById('left');
var btnright=document.getElementById('right');
var ali=oUl.getElementsByTagName('li');
var isSpeed;
var btnstop=document.getElementById('btn');
var timer=null;
btnLeft.onmouseover=function()
{isSpeed=-13;}
btnright.onmouseover=function()
{isSpeed=13;} //设置速度和方向
oUl.innerHTML+=oUl.innerHTML;
setInterval(move,100) //定时器
btnstop.onclick=function()
{
timer=setInterval(move,100)//为什么停不下来啊??????
clearInterval(timer)}
function move()
{
oUl.style.width=ali.length*ali[0].offsetWidth+'px'
oUl.style.left=oUl.offsetLeft+isSpeed+'px';
if(oUl.offsetLeft<-oUl.offsetWidth/2)
{oUl.style.left='0px';}
else if(oUl.offsetLeft>0)
{oUl.style.left=-oUl.offsetWidth/2+'px';}
}
}
为何要用两个定时器 上面那个一直在调用move啊
可以用浏览器打断点,按F12
建议你运行过程中打断点,就能看出代码运行的走向
setInterval(move,100) //定时器一行去掉
JavaScript进阶篇
468060 学习 · 21891 问题
相似问题