已采納回答 / 東方既白233
這是因為你要確定你設(shè)置的多運(yùn)動都完成后才去清除定時器,這個flag就是用來判斷你設(shè)置的所有運(yùn)動,比如高度寬度透明度是否都達(dá)到了目標(biāo)值,flag才為true,否則之前flag會變成flase,不執(zhí)行清除定時器<...圖片...>
2017-04-05
最新回答 / 徐無敵
第一節(jié)只是讓他動起來,這幾行代碼的意思是讓他每隔30毫秒,往右移動speed個像素,不是連續(xù)的setInterval(function(){oDiv.style.left = oDiv.offsetLeft+speed+'px';},30)
2017-04-04
已采納回答 / Tarol
你要是非要這么用的話,改寫成var?box=document.getElementsByClassName('box')[0];不加[0]的話,box得到的是一個dom對象數(shù)組,之后需要for循環(huán)遍歷,你再回頭把js關(guān)于dom章節(jié)的知識點看看吧,基礎(chǔ)知識不掌握就急著做效果是不行的
2017-04-03
//產(chǎn)生了一個問題:當(dāng)鼠標(biāo)移入移出后在返回動畫還沒有完成時再次移入,
//clearInterval會結(jié)束掉上一個動作,結(jié)果會導(dǎo)致元素不在返回而是再次執(zhí)
//行onmouseover事件同時觸發(fā)計時器。
//那么,怎么才能讓它完成返回動畫之前,鼠標(biāo)移入都不能觸發(fā)計時器呢?
//這里需要加一個判斷,但是怎么表示“完成返回動畫之前”這個狀態(tài)呢?
//想一想,元素在運(yùn)動時什么屬性在變化,沒錯!offsetLeft,也就是當(dāng)前
//位置,就返回動畫而言,這個當(dāng)前位置是從0到-200,在這個范圍內(nèi)變化,
//clearInterval會結(jié)束掉上一個動作,結(jié)果會導(dǎo)致元素不在返回而是再次執(zhí)
//行onmouseover事件同時觸發(fā)計時器。
//那么,怎么才能讓它完成返回動畫之前,鼠標(biāo)移入都不能觸發(fā)計時器呢?
//這里需要加一個判斷,但是怎么表示“完成返回動畫之前”這個狀態(tài)呢?
//想一想,元素在運(yùn)動時什么屬性在變化,沒錯!offsetLeft,也就是當(dāng)前
//位置,就返回動畫而言,這個當(dāng)前位置是從0到-200,在這個范圍內(nèi)變化,
2017-04-03
//而彈出動畫是-200到0,也就是說,當(dāng)offsetLeft變化時,鼠標(biāo)移入移出事
//件不允許觸發(fā),不對!
//不允許觸發(fā)的話那設(shè)置這兩個事件有什么意義,鼠標(biāo)移出去之后還沒有反
//應(yīng)?這就與我們的目的相去甚遠(yuǎn),那么有什么辦法能讓它不會“失控”整
//個元素“彈出來”或是縮得消失在屏幕上了呢?
//簡單!讓那個offsetLeft不小于-200不大于0就ok了!
//不過考慮到?jīng)]有人無聊到會測試這個,我就不處理這個問題了
//件不允許觸發(fā),不對!
//不允許觸發(fā)的話那設(shè)置這兩個事件有什么意義,鼠標(biāo)移出去之后還沒有反
//應(yīng)?這就與我們的目的相去甚遠(yuǎn),那么有什么辦法能讓它不會“失控”整
//個元素“彈出來”或是縮得消失在屏幕上了呢?
//簡單!讓那個offsetLeft不小于-200不大于0就ok了!
//不過考慮到?jīng)]有人無聊到會測試這個,我就不處理這個問題了
2017-04-03
已采納回答 / 小狗旺旺
首先獲取元素要在文檔加載完成之后才能獲取到的,其次是你那個速度是網(wǎng)頁加載完成的時候輸入的,所以要在點擊事件里面獲取,才能得到輸入的速度值,這個值是個字符串用parseInt()轉(zhuǎn)義下,speed是全局變量可以在函數(shù)里面使用,不用帶進(jìn)去<!DOCTYPE html><html><head><meta charset="UTF-8"><title>js動畫制作</title><style type="text/css">#di...
2017-03-31