最贊回答 / 伴山客
終于想通了,還是flag的問題。大家注意,var flag =true;這句話一定一定要放在for-in外面理解如下:首先for-in雖然使得看起來是同步進行,但實際還是你定義的運動1,運動2,運動3?順序操作。當放在外面的時候,三個運動是修改一個flag,有一個沒滿足都是false。而當flag定義放在循環里的時候,每一個運動的每一次操作,都會重置flag為true。模擬一下:假定速度為1.首先第一圈。寬是false,然運動,達到目標。高是false,運動,仍未達到。透明度是false,運動,仍未達到。...
2017-12-20
最新回答 / MarvelYao
clearInterval(timer),應該是obj.timer調試看看動畫過程是否正確取值和設置值flag在里面的時候,外面的判斷取不到flag的值,obj.timer關不掉。效果看起來當然一樣,跟第一問差不多。
2017-11-17
已采納回答 / 德川家康
當div完全顯示的時候,odiv.offsetleft為0,想讓它縮回去,你設target為-200,然而你判斷條件是odiv.offsetLeft>=target,條件成立,執行??clearInterval(timer);,自然縮不回去。
2017-10-31
最新回答 / qq_歐陽貝貝_0
offsetLeft 是距離屏幕左部的距離。odiv.style.left=odiv.offsetLeft+10+"px"說明:odiv樣式左邊,等于,odiv每次向左屏幕移動10像素。
2017-10-31
已采納回答 / cRCHAN
有沒有看完那節課?課程后面講了,是因為盒子的原因,真正的寬度是設置的width值再加上邊框的值*2(因為有左右邊框)。offsetWidth讀取的是width加上border的值,而style.width只是width的值。原先來說是oDiv.style.width + 2 = oDiv.offsetWidth(這里不是賦值,而是普通的相等)。實際oDiv.offsetWidth比oDiv.style.width大2像素,賦值運算的時候,雖然offsetWidth - 1了,也還是比style.width...
2017-10-31