var timer function stopMove(){ clearInterval(timer) } function startMove(){ var div=document.getElementById('ok') clearInterval(timer) timer=setInterval(function(){ ok.style.width=ok.offsetWidth-1+'px' ;//理论上应该是宽度不断减少,但是实际却增长,原因在样式表中的border属性,去掉即可解决 },20) } script>