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

