前端效能最佳化:儘可能使用CSS動畫

來源:互聯網
上載者:User

日期:2013-7-4  來源:GBin1.com

網站設計對美觀特性和可配置元素動畫的大量需求,使得一些JavaScript類庫,如jQuery,MooTools大量的被使用。儘管現在瀏覽器支援CSS的transformationkeyframe所做的動畫,現在仍有很多人使用JavaScript製作動畫效果,但是實際上使用CSS動畫比起JavaScript驅動的動畫效率更高。CSS動畫同時 需要更少的代碼。很多的CSS動畫是用GPU處理的,因此動畫本身很流暢,當然你可以使用下面這個簡單的CSS強制使你的硬體加速:

.myAnimation {    animation: someAnimation 1s;    transform: translate3d(0, 0, 0); /* 強制硬體加速 */}

tansform:transform(0,0,0)在不會影響其他動畫的同時將通話送入硬體加速。在不支援CSS動畫的情況下(IE8及以下版本的瀏覽器),你可以引入JavaScript動畫邏輯:

<!--[if 低於IE8版本]><script src="http://code.jquery.com/jquery-1.9.1.min.js"></script><script src="/js/ie-animations.js"></script><![endif]-->

在上例中,ie-animations.js檔案必須包含你自訂的jQuery代碼,用於當CSS動畫在早期IE中不被支援的情況下,來替代CSS動畫完成動畫效果。完美的通過CSS動畫來最佳化動畫,通過JavaScript來支援全域動畫效果。

在下一篇中,我們將介紹事件委託。關於CSS動畫的介紹,可以參考精品教程的CSS3系列教程之動畫。

相關閱讀:

  • 前端效能最佳化:DocumentFragments或innerHTML取代複雜的元素注入
  • 前端效能最佳化:高頻執行事件/方法的防抖
  • 前端效能最佳化:網路儲存的靜態緩衝和非必要內容最佳化
  • 前端效能最佳化:使用非同步載入,消極式載入依賴
  • 前端效能最佳化:使用Array.prototype.join代替字串串連

via 極客社區

來源:前端效能最佳化:儘可能使用CSS動畫
相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.