js實現持續的動畫

2021-08-22 16:36:23 字數 831 閱讀 5740

利用setinterval實現

採用定時器實現

window.onload=function()

start.onclick=function()//開始動畫

stopmove.onclick=function()//停止動畫

}

利用requestanimationframe

requestanimationframe是瀏覽器用於定時迴圈操作的乙個介面,類似於settimeout,主要用途是按幀對網頁進行重繪。

requestanimationframe的優勢,在於充分利用顯示器的重新整理機制,比較節省系統資源。顯示器有固定的重新整理頻率(60hz或75hz),也就是說,每秒最多只能重繪60次或75次,requestanimationframe的基本思想就是與這個重新整理頻率保持同步,利用這個重新整理頻率進行頁面重繪。此外,使用這個api,一旦頁面不處於瀏覽器的當前標籤,就會自動停止重新整理。這就節省了cpu、gpu和電力。

// 相容性處理

window.requestanimframe = (function()

)})()

//獲取動畫anim

var elem = document.getelementbyid('mydiv')

var starttime = undefined

function render(time)

elem.style.left = ((time - starttime) / 10) % 300 + 'px'

}elem.onclick = function() )()

}

js動畫實現透明度動畫

在本次例項中,由於一般主流的瀏覽器對於透明度opacity最大值為1,但是在ie6最大值是100,此次例子是按主流瀏覽器的透明度來算的,所以定義的是小數,也可以定義為整數為單位,在運算的時候遇到主流的瀏覽器除以100就可以了。例項 透明度動畫 title style body,div opacity...

原生js實現簡單動畫效果

實現動畫效果可以用jquery提供的animate方法,或一些外掛程式來實現,但是隨著前端元件化開發的流行,jquery大量的dom操作已經顯得十分多餘,正在逐漸從前端技術棧中被淘汰,下面我們使用原生js實現簡單的勻速動畫效果和緩動效果 勻速動畫實現水平移動 css樣式 box line400 li...

js的幀動畫

doctype html html lang en head meta charset utf 8 meta name viewport content width device width,initial scale 1.0 title document title script src scri...