最近中文字幕高清中文字幕无,亚洲欧美高清一区二区三区,一本色道无码道dvd在线观看 ,一个人看的www免费高清中文字幕

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

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

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

白小凡 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能移動(dòng)?,而放在divMove外面整個(gè)運(yùn)動(dòng)都進(jìn)行不了了?, ??2.這一行只是取div而已,在外面當(dāng)做全局變量來用,不行嗎, ??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貢獻(xiàn)20條經(jīng)驗(yàn) 獲得超5個(gè)贊

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

oDiv這個(gè)對(duì)象是一個(gè)通過計(jì)時(shí)器寫的運(yùn)動(dòng)的div,必須在計(jì)時(shí)器內(nèi)部調(diào)用,否則它的這個(gè)對(duì)象只會(huì)獲取一次,導(dǎo)致它的位置(oDiv.offsetLeft)無法自增,所以就無法移動(dòng)了。


查看完整回答
反對(duì) 回復(fù) 2016-12-12
  • 1 回答
  • 0 關(guān)注
  • 1322 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)