第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

javascript實現(xiàn)div運動的代碼中,一行代碼位置不同,效果不同,這里是為什么呢?(具體見注釋))

javascript實現(xiàn)div運動的代碼中,一行代碼位置不同,效果不同,這里是為什么呢?(具體見注釋))

白小凡 2016-12-12 16:05:25
<!DOCTYPE?html> <html> <head> <meta?charset="UTF-8"> <title>Insert?title?here</title> <style?type="text/css"> div{ width:200px; height:200px; background:#ccc; position:absolute; left:0; top:50px; } </style> </head> <body> <script?type="text/javascript"> var?timer; function?divMove(){ var?speed=2; var?bt1=document.getElementById('bt1'); /*1.為什么下面這一行必須放在divMove里面才能確保div能移動?,而放在divMove外面整個運動都進行不了了?, ??2.這一行只是取div而已,在外面當做全局變量來用,不行嗎, ??3.bt1放在外面怎么就沒有影響*/ var?oDiv=document.getElementById('div1'); clearInterval(timer); timer=setInterval(function(){ if(oDiv.offsetLeft>=400){ clearInterval(timer); }else{ oDiv.style.left=oDiv.offsetLeft+speed+'px'; } },30) oDiv.onmouseover=function(){ clearInterval(timer); } } </script> <input?id='bt1'?type="button"?value='start?run'?onclick='divMove()'> <div?id='div1'></div> </body> </html>
查看完整描述

1 回答

已采納
?
無所畏懼小小小

TA貢獻20條經驗 獲得超5個贊

其中var?bt1=document.getElementById('bt1');這一句代碼是可以放在函數(shù)以外作為全局變量的。因為bt1只是一個按鈕無需用計時器更新它的值。

oDiv這個對象是一個通過計時器寫的運動的div,必須在計時器內部調用,否則它的這個對象只會獲取一次,導致它的位置(oDiv.offsetLeft)無法自增,所以就無法移動了。


查看完整回答
反對 回復 2016-12-12
  • 1 回答
  • 0 關注
  • 1303 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號