亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 辦公 > Flash > 正文

JavaScript Tween算法及緩動效果第1/2頁

2024-09-12 17:51:03
字體:
來源:轉載
供稿:網友
我這里要教大家的是怎么利用flash的Tween類的算法,來做js的Tween算法,并利用它做一些簡單的緩動效果。

[Ctrl+A 全選 注:引入外部Js需再刷新一下頁面才能執行]

效果說明

首先大家到這里下載flash的as腳本(建議看看這里的demo),1.0和2.0都可以(里面的算法都一樣)。
例如打開2.0的可以看到幾個as文件,每個文件對應一個Tween效果,分別有(參考里面的說明):

Linear:無緩動效果;
Quadratic:二次方的緩動(t^2);
Cubic:三次方的緩動(t^3);
Quartic:四次方的緩動(t^4);
Quintic:五次方的緩動(t^5);
Sinusoidal:正弦曲線的緩動(sin(t));
Exponential:指數曲線的緩動(2^t);
Circular:圓形曲線的緩動(sqrt(1-t^2));
Elastic:指數衰減的正弦曲線緩動;
Back:超過范圍的三次方緩動((s+1)*t^3 - s*t^2);
Bounce:指數衰減的反彈緩動。
ps:以上都是自己的爛翻譯,希望各位修正。

每個效果都分三個緩動方式(方法),分別是:

easeIn:從0開始加速的緩動;
easeOut:減速到0的緩動;
easeInOut:前半段從0開始加速,后半段減速到0的緩動。
其中Linear是無緩動效果,沒有以上效果。

然后看看里面的算法,以Quadratic的easeOut為例:

static function easeOut (t:Number, b:Number, c:Number, d:Number):Number {
return -c * ((t=t/d-1)*t*t*t - 1) + b;
}
這是as代碼,四個參數分別是:

t:current time(當前時間);
b:beginning value(初始值);
c: change in value(變化量);
d:duration(持續時間)。
ps:Elastic和Back有其他可選參數,里面都有說明。

那如何在js中利用這些算法呢?可以看到,雖然是as代碼,但里面的程序是可以直接放在js里使用的。
我們可以定義一個類,把它這部分放在里面:

var Tween = {
Quad: {
easeOut: function(t,b,c,d){
return -c *(t/=d)*(t-2) + b;
}
}
}
這樣,就可以用Tween.Quad.easeOut取得這個算法了,其他算法也一樣處理就行了。

接下來就可以利用這個js的Tween來做一些緩動效果了。
先通過上面的坐標實例說一下算法原理:
x軸是時間,y軸是當前值,b是y軸的初始值,x軸的初始值是0,t是當前時間。當t(x軸)逐漸增加到達d時,當前值(y軸)會到達目標值(b+c)。
想詳細理解的話可以找資料看看吧(貌似跟數學關系比較大)。

下面就介紹如何使用這個Tween了,首先b、c、d三個參數(即初始值,變化量,持續時間)在緩動開始前,是需要先確定好的。
舉一個簡單的例子,一個div要向右緩動,left初始值是50,那么b就是50,要向右移動100,那c就是100,如果知道的是目標值,例如要向右移動到150,那就把目標值150減初始值b就是變化量c了。
至于d的設置就比較靈活,只要符合t是從0向d遞增(或遞減)就可以了。
d跟步長配合使用來設置持續時間,例如d設置為100,如果設置步長是1,那么從0到100就有100步,即分100次來完成這個過程,步數越多那么持續時間就越長。
至于t的變化相當于時間的變化,一般是均勻變化的,每次變化都增加一個步長,當t從0遞增(或遞減)到d時,緩動就結束了。
要注意的是t是從0開始的,設置步長時必須確定t確實能到達d,如果上面的步長是3,那么t就永遠都到不了d了。更好的處理是當t等于或超過d之后,就停止定時器并設置當前值為目標值。

了解了Tween的使用后就可以實現動畫效果了。繼續上面的例子,已經確定b是50,c是100,d是100,步長是1,使用Tween.Quad.easeOut算法。那么可以用以下程序實現緩動:

var b=50,c=100,d=100,t=0;
function Run(){
div.style.left = Math.ceil(Tween.Quad.easeOut(t,b,c,d)) + "px";
if(t<d){ t++; setTimeout(Run, 10); }
}
Run();
一個簡單的緩動效果就實現了,要實現不同的緩動,只需要使用對應的Tween算法就行了,以前看來遙不可及的效果,現在這么容易就實現了(當然那些算法才是最難的地方)。

這樣關于緩動的效果就介紹完了,但其實遠遠不止這些,我們還可以自己定義一些算法,發揮想象力,做一些好玩的效果。

[Ctrl+A 全選 注:引入外部Js需再刷新一下頁面才能執行]

12下一頁閱讀全文
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产女同一区二区| 国产成人在线精品| 青青草99啪国产免费| 欧美又大又硬又粗bbbbb| 国产精品欧美日韩一区二区| 欧美大秀在线观看| 日韩欧美精品网站| 国内精品久久久久久久久| 亚洲色图13p| 久久久久久亚洲精品中文字幕| 日韩毛片在线看| 日韩电视剧在线观看免费网站| 欧美日韩成人黄色| 久久精品中文字幕一区| 国产日产久久高清欧美一区| 91在线色戒在线| 亚洲精品一区av在线播放| 91精品国产高清自在线| 久久天天躁夜夜躁狠狠躁2022| 欧美巨乳在线观看| 久久久av免费| 不卡在线观看电视剧完整版| 亚洲福利视频二区| 久久精品电影一区二区| 岛国av一区二区在线在线观看| 亚洲精品中文字幕女同| 成人黄色影片在线| 欧美日韩在线视频首页| 成人黄色免费网站在线观看| 亚洲情综合五月天| 狠狠爱在线视频一区| 国产成人激情小视频| 欧美性猛交丰臀xxxxx网站| 91高清视频免费观看| 不卡在线观看电视剧完整版| 日韩美女激情视频| 国产精品96久久久久久| 亚洲欧美色婷婷| 亚洲色图第一页| 欧美性xxxx在线播放| 日韩视频永久免费观看| 久久精品夜夜夜夜夜久久| 日本三级久久久| 日本欧美一级片| 久久伊人91精品综合网站| 欧洲精品毛片网站| 欧美人与性动交a欧美精品| 91亚洲精品久久久久久久久久久久| 亚州国产精品久久久| 国产精品久久久久久久久久久久久久| 欧美丝袜一区二区| 一区二区三区视频免费在线观看| 欧美精品18videos性欧美| 一区二区在线免费视频| 久久九九精品99国产精品| 亚洲白虎美女被爆操| 亚洲欧美日韩国产中文专区| 欧美精品性视频| 国产一区二区在线免费| 亚洲а∨天堂久久精品喷水| 亚洲精品国产精品国自产观看浪潮| 日韩精品中文字幕视频在线| 日韩欧美一区二区三区久久| 日本免费一区二区三区视频观看| 欧美日韩亚洲91| 96国产粉嫩美女| 91高清视频在线免费观看| 成人激情综合网| 亚洲一区二区三区四区视频| 欧美性猛交xxxx偷拍洗澡| 欧美大胆在线视频| 成人情趣片在线观看免费| 国产视频在线观看一区二区| 国产成人精品av在线| 国产第一区电影| 欧美高清视频免费观看| 欧美极品在线播放| 国自产精品手机在线观看视频| 欧美日韩国产一中文字不卡| 亚洲人成网7777777国产| 国产精品视频最多的网站| 欧美激情亚洲激情| 日韩天堂在线视频| 日韩av在线一区二区| 久久视频这里只有精品| 亚洲精品电影久久久| 奇米四色中文综合久久| 国产成人久久久| 在线激情影院一区| 97免费在线视频| 欧美精品电影在线| 欧美极品少妇与黑人| 亚洲激情视频网站| 九九久久久久久久久激情| 久久精品国产综合| 欧美激情亚洲国产| 欧美日韩免费观看中文| 日韩中文字幕在线视频播放| 日韩精品福利网站| 久久中文字幕一区| 午夜精品久久久久久久久久久久| 国产精品久久久av| 久久青草精品视频免费观看| 在线亚洲欧美视频| 国产精品久久久久久久天堂| 久久人人爽人人爽人人片av高清| 亚洲精品资源美女情侣酒店| 欧美激情综合亚洲一二区| 亚洲精品91美女久久久久久久| 国产精品久久久久7777婷婷| 精品偷拍各种wc美女嘘嘘| 精品久久久久久中文字幕一区奶水| 91高清视频在线免费观看| 久久99久久99精品免观看粉嫩| 2018中文字幕一区二区三区| 国产最新精品视频| 国产精品丝袜一区二区三区| 国产视频精品在线| 亚洲男人的天堂网站| 久久天天躁狠狠躁夜夜躁2014| 色偷偷偷亚洲综合网另类| 欧美日韩黄色大片| 成人h片在线播放免费网站| 亚洲欧美国产一本综合首页| 亚洲精品视频播放| 国产精品免费视频久久久| 国产大片精品免费永久看nba| 秋霞av国产精品一区| 久久av红桃一区二区小说| 国产精品嫩草影院一区二区| 亚洲精品国产精品国自产在线| 国产亚洲美女久久| 日韩av综合中文字幕| 欧美激情久久久| 国产精品美女主播在线观看纯欲| 久久九九全国免费精品观看| 国产视频精品va久久久久久| 欧美极品欧美精品欧美视频| 亚洲欧美日韩精品久久奇米色影视| 欧美日产国产成人免费图片| 欧美激情在线有限公司| 欧美日韩成人免费| 久久国产天堂福利天堂| 青青草原成人在线视频| 亚洲人成电影在线观看天堂色| 精品美女国产在线| 久久九九国产精品怡红院| 91久久精品一区| 精品久久久久久久久久久久| 4k岛国日韩精品**专区| 91精品视频免费| 国产999精品久久久| 亚洲深夜福利视频| 国产成人精品免费视频| 欧美视频在线观看 亚洲欧| 欧美成人午夜激情在线| 一区二区三区视频免费| 国产成人精品综合| 久久久91精品国产| 久久99亚洲精品| 一个人看的www欧美| 久久在线视频在线| 色妞色视频一区二区三区四区| 最新日韩中文字幕|