亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

為什么我的關閉定時器不起效果

var timer=null;

function startMove(){

var divv=document.getElementById("div1");

setInterval(function(){

if (divv.offsetLeft==0) {

clearInterval(timer);

}else{

divv.style.left=divv.offsetLeft+10+'px';

}

},30)

}


正在回答

1 回答

function startMove() {

????????????var divv = document.getElementById("div1");

? ? ? ? ? ? clearInterval(timer);//最開始需要清空一下,否則以前執行會留有緩存

? ? ? ? ? ? timer = setInterval(function() { //指定timer的值,否則要怎么清空

? ? ? ? ? ? ? ? if (divv.offsetLeft == 0) {

? ? ? ? ? ? ? ? ? ? clearInterval(timer);

? ? ? ? ? ? ? ? } else {

? ? ? ? ? ? ? ? ? ? divv.style.left = divv.offsetLeft + 10 + 'px';

? ? ? ? ? ? ? ? }

? ? ? ? ? ? }, 30)

? ? ? ? }

//如果這樣還是解決不了問題說明css有問題,是不是添加了border之類的屬性等等。

<!DOCTYPE html>

<html>

<head>

? ? <meta charset="UTF-8">

? ? <title>定時器</title>

? ? <style type="text/css">

? ? *{padding: 0;

? ? ?margin: 0}

? ? div {

? ? ? ? position: absolute;

? ? ? ? left: -200px;

? ? ? ? width: 400px;

? ? ? ? height: 50px;

? ? ? ? background: #59B24F;

? ? }

? ? </style>

? ? <script type="text/javascript">

? ? window.onload = function() {

? ? ? ? var divv = document.getElementById("div1");

? ? ? ? divv.onmouseover = function() {

? ? ? ? ? ? startMove();

? ? ? ? }

?? ? ? ?var timer = null;

? ? ? ? function startMove() {

? ? ? ? ? ? clearInterval(timer);

? ? ? ? ? ? timer = setInterval(function() {

? ? ? ? ? ? ? ? if (divv.offsetLeft == 0) {

? ? ? ? ? ? ? ? ? ? clearInterval(timer);

? ? ? ? ? ? ? ? } else {

? ? ? ? ? ? ? ? ? ? divv.style.left = divv.offsetLeft + 1 + 'px';

? ? ? ? ? ? ? ? }

? ? ? ? ? ? }, 30)

? ? ? ? }

? ? }

? ? </script>

</head>

<body>

? ? <div id="div1"></div>

</body>

</html>


0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
JS動畫效果
  • 參與學習       113918    人
  • 解答問題       1502    個

通過本課程JS動畫的學習,從簡單動畫開始,逐步深入各種動畫框架封裝

進入課程

為什么我的關閉定時器不起效果

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號