多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > web前端 > htmlcss > 文章標題

文章標題

來源:程序員人生   發布時間:2015-05-07 09:59:27 閱讀次數:2696次

前面的空話

最近由于公司的項目進入關鍵期,忙的昏天黑地,都沒有時間陪伴我心愛的球球媽和小球球,心里慚愧很多。同時,blog也有很多時間沒有更新了,對不起自己在年初定下的多寫1些東西的目標,今晚終究能夠再拿起書本看1章書,非常開心平靜。

出處

寫這篇文章主要是看司徒正美大神的《javascript框架設計》想到的1些東西,記錄下來,以便以后使用,說來慚愧,1個書看了大半年還沒有讀完。
不過這其實不妨礙這是1本前端工程師都應當讀1下的好書。其中很多框架級的知識點和理論都非常值得推重和學習。
今天看到動畫引擎1節,同時想起在項目中的各種動畫利用,發現確切有很多共鳴。

動畫的思路

實現動畫不過就是兩種思路,1種用js不斷的改變元素的位置和大小,形狀等等參數,到達快速展現,以欺騙人眼實現動畫的效果,另外一種是使用css3提供的動畫函數(translate, animetion)。

在我們的項目早期由于不熟習css3的動畫,同時也對css3的兼容性抱有1定疑問,我們采取了1個小巧的js動畫庫,velocity.js,結果雖然能用,但是也是非悲劇,在最近的chrome閱讀器上,js動畫會留下拖影,不得已,只能轉而使用第2種方案―css3動畫。

css3 動畫庫

現在業界有很多優秀的css3動畫庫,比如 animation,這個動畫庫提供了很多經常使用的動畫,使用起來也很方便。

不過要是需要使用1些動畫庫里沒有的css3動畫效果,就需要用到自己的緩動公式和組合型css3動畫。

緩動公式

緩動公式實際上是animation屬性中對動畫履行樣式的說明,它的樣式名稱為animation-time-function,這個函數有多種值,ease,linear,ease-in,ease-out,ease-in-out,cubic-bezier具體這些屬性值是甚么,可以參看animation-time-function屬性,所謂緩動公式,就是使用cubic-bezier參數,這個參數允許自定義1個時間曲線,1共需要傳入4個值,分別代表[p1x, p1y, p2x, p2y],這兩個點加上[0, 0], [1, 1],組成的4個點,代表了貝塞爾曲線的走勢。

這里寫圖片描述

下圖是默許值的貝塞爾曲線。

這里寫圖片描述

有些網站提供可視化貝塞爾曲線的可視化調劑和導出,這里或這里。

下面的代碼來自司徒正美的mass框架動畫模塊,特地提取出來,以備后續查找,有興趣的同學可以將以下map中的數據放到可視化網站中便可看到map中的貝塞爾曲線。


var easingMap = {
        "linear": [0.250, 0.250, 0.750, 0.750],
        "ease": [0.250, 0.100, 0.250, 1.000],
        "easeIn": [0.420, 0.000, 1.000, 1.000],
        "easeOut": [0.000, 0.000, 0.580, 1.000],
        "easeInOut": [0.420, 0.000, 0.580, 1.000],
        "easeInQuad": [0.550, 0.085, 0.680, 0.530],
        "easeInCubic": [0.550, 0.055, 0.675, 0.190],
        "easeInQuart": [0.895, 0.030, 0.685, 0.220],
        "easeInQuint": [0.755, 0.050, 0.855, 0.060],
        "easeInSine": [0.470, 0.000, 0.745, 0.715],
        "easeInExpo": [0.950, 0.050, 0.795, 0.035],
        "easeInCirc": [0.600, 0.040, 0.980, 0.335],
        "easeInBack": [0.600, -0.280, 0.735, 0.045],
        "easeOutQuad": [0.250, 0.460, 0.450, 0.940],
        "easeOutCubic": [0.215, 0.610, 0.355, 1.000],
        "easeOutQuart": [0.165, 0.840, 0.440, 1.000],
        "easeOutQuint": [0.230, 1.000, 0.320, 1.000],
        "easeOutSine": [0.390, 0.575, 0.565, 1.000],
        "easeOutExpo": [0.190, 1.000, 0.220, 1.000],
        "easeOutCirc": [0.075, 0.820, 0.165, 1.000],
        "easeOutBack": [0.175, 0.885, 0.320, 1.275],
        "easeInOutQuad": [0.455, 0.030, 0.515, 0.955],
        "easeInOutCubic": [0.645, 0.045, 0.355, 1.000],
        "easeInOutQuart": [0.770, 0.000, 0.175, 1.000],
        "easeInOutQuint": [0.860, 0.000, 0.070, 1.000],
        "easeInOutSine": [0.445, 0.050, 0.550, 0.950],
        "easeInOutExpo": [1.000, 0.000, 0.000, 1.000],
        "easeInOutCirc": [0.785, 0.135, 0.150, 0.860],
        "easeInOutBack": [0.680, -0.550, 0.265, 1.550],
        "custom": [0.000, 0.350, 0.500, 1.300],
        "random": [Math.random().toFixed(3),
            Math.random().toFixed(3),
            Math.random().toFixed(3),
            Math.random().toFixed(3)]
    }
   

更多內容請查看zakwu的小站

生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 999毛片| 日韩欧美亚洲国产一区二区三区 | 日本高清免费网站zzzzzzzz | 老司机成人免费精品视频 | 国产粉嫩00福利福利福利 | 在线观看欧美精品 | 国产成人精品免费视频大 | 99毛片| 国产一区亚洲二区三区 | 亚洲三级视频在线观看 | 日韩有码视频在线 | 天堂 在线最新版在线 | 91免费福利视频 | 国产欧美综合一区二区 | 欧美亚洲 尤物久久 综合精品 | 日韩中文字幕精品免费一区 | 成年人精品视频 | 中文字幕永久视频 | 亚洲永久免费视频 | 国产成人a v在线影院 | 亚欧精品一区二区三区四区 | 国产欧美日韩中文久久 | 中国jizz妇女jizz妇女 | 欧美jizzhd欧美巨大 | 亚洲 欧美 日韩中文字幕一区二区 | 欧美18一19sex性hd | 国产精品嫩草免费视频 | 综合久久精品 | 日本xxxⅹ色视频在线观看网站 | 亚洲图片欧美小说 | 青青国产成人精品视频 | 亚洲免费高清 | 欧美性大交 | 日本不卡视频一区二区三区 | 99久热成人精品视频 | 久久精品国产福利国产琪琪 | 久久亚洲精品成人 | 亚洲色图校园春色 | 亚洲m男在线中文字幕 | 亚洲第二页| 在线观看亚洲成人 |