javascript?中動畫制作方法?animate()屬性
animate是個非常冷門的方法,以至于百度和手冊上都找不到相關(guān)的資料。當(dāng)然通過一個小小的demo,我還是發(fā)現(xiàn)了方法的一些屬
animate是所有dom元素都有的方法,可以用來最做過度動畫,關(guān)鍵幀動畫。這個方法可以更方便的讓我們制作動
animate共有兩個參數(shù) (很可惜似乎沒有回調(diào)函數(shù),沒發(fā)現(xiàn))
關(guān)鍵幀 (參數(shù)可以是數(shù)組或?qū)ο螅瑪?shù)組內(nèi)包裹的也必須是對象)
對象里的屬性就是css屬性和值了
動畫屬性設(shè)置 {參數(shù)數(shù)字或者對象}
目前發(fā)現(xiàn)的屬性有以下 :
- duration: 動畫時長 (單位毫秒)
- iterations :重復(fù)次數(shù)(默認(rèn)1) 數(shù)字 (無限循環(huán):‘Infinity’) [非必須]
- fill :結(jié)束時復(fù)位 [不復(fù)位:forwards, 復(fù)位(默認(rèn)值):none] [非必須]
- delay : 設(shè)置動畫延遲時長 (單位毫秒) [非必須]
- easing :設(shè)置動畫 運動速率 [esse(默認(rèn)):慢-快-慢 ,linear: 勻速, ease-in: 慢-勻速, ease-in-out 慢-勻速-慢] [非必須]
通過兩個案例說明一下:
過度動畫即第一個參數(shù)直接為對象{}
<div id="box" style=”width: 200px;height: 200px;background: red;border-radius:50% 50% 0 0;”></div> <script> // 獲取元素對象 var box = document.getElementById("box"); box.animate( { // 對象 transform:'rotate(360deg)' }, { duration: 1000, // 動畫時長 (單位毫秒) easing:'linear', // 平滑 iterations: Infinity, // 重復(fù)次數(shù) (無限循環(huán):Infinity) }, ); </script>
第二個小盒子移動,第一個參數(shù)是數(shù)字,數(shù)組包裹著對象(每個對象就算一個關(guān)鍵幀)[{},{}]
<style type="text/css"> #box{ width: 200px; height: 200px; background: red; position: absolute; border-radius:50% 50% 0 0; } </style> <div id="box"></div> <script> box.animate( [ //關(guān)鍵幀(數(shù)組包裹對象) {transform:'translate3d(0px, 0px, 0)',opacity:'1'}, // 第一幀 {transform:'translate3d(50px, 0px, 0)',opacity:'.8'}, // 第二幀 {transform:'translate3d(150px, 100px, 0)',opacity:'.5'}, // 第三幀 ], { duration: 1000, // 動畫時長 (單位毫秒) iterations: 1, // 重復(fù)次數(shù) (無限循環(huán):Infinity) fill:'forwards', //結(jié)束時不復(fù)位 delay:0, // 設(shè)置動畫延遲時長 (單位毫秒) easing:'linear' //設(shè)置動畫 運動速率 (linear: 勻速) }, ); </script>
到此這篇關(guān)于javascript 中動畫制作方法 animate()屬性的文章就介紹到這了,更多相關(guān)javascript animate()屬性內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
JavaScript中Async/Await通過同步的方式實現(xiàn)異步的方法介紹
在JavaScript的異步編程中,我們經(jīng)常使用回調(diào)函數(shù)、Promise和 Async/Await來解決異步操作的問題,Async/Await 又是Promise的語法糖,它的出現(xiàn)讓異步編程變得更加直觀和易于理解,本文將詳細(xì)講解Async/Await如何通過同步的方式實現(xiàn)異步2023-06-06細(xì)數(shù)promise與async/await的使用及區(qū)別說明
這篇文章主要介紹了細(xì)數(shù)promise與async/await的使用及區(qū)別說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-07-07使用CoffeeScrip優(yōu)美方式編寫javascript代碼
CoffeeScript就是JavaScript,他進行的是一對一的編譯,或者說是翻譯,而且編譯成的JavaScript代碼可讀性很強。本文給大家介紹使用CoffeeScript優(yōu)美方式編寫javascript代碼,感興趣的朋友一起看看吧2015-10-10跟我學(xué)習(xí)javascript的this關(guān)鍵字
跟我學(xué)習(xí)javascript的this關(guān)鍵字,this是動態(tài)綁定,或稱為運行期綁定的,這就導(dǎo)致 JavaScript中的this關(guān)鍵字有能力具備多重含義,帶來靈活性的同時,也為初學(xué)者帶來不少困惑2015-11-11django admin 使用SimpleUI自定義按鈕彈窗框示例
Django 后臺admin有大量的屬性和方法,擁有強大的功能和自定義能力,這篇文章主要介紹了django admin 使用SimpleUI自定義按鈕彈窗框示例,需要的朋友可以參考下2023-04-04