Google uses AI technology to translate content into your preferred language. AI translations can contain errors.
2014 年 Chrome 開發人員高峰會 - 執行階段效能應用科學
透過集合功能整理內容
你可以依據偏好儲存及分類內容。
去年底,我建構了 Chrome 開發人員高峰會網站。我希望網站具有質感設計的外觀和風格,因為這是很棒的設計語言,而且我覺得很適合我想要建立的網站類型。但就像任何新的設計語言一樣,您會遇到問題、挑戰,並需要做出決策,尤其是在處理網路慣例時。
建立網站時,最困難的部分之一就是點選資訊卡時的「接管」效果。
要讓這類效果以 60 FPS 執行,需要經過一些思考、原型設計和有趣的妥協。在 Chrome 開發人員高峰會上,我談到了這項效果,並詳細說明瞭我是如何建構這項效果。
高效能動畫 (至少目前) 是指瀏覽器合成器偏好的動畫。如果能堅持變更轉換和不透明度屬性,通常就能獲得優異成效。我採用的一般卡片動畫方法就是這樣:
- 在卡片摺疊時,測量卡片中所有元素的位置。
- 切換資訊卡的類別,即可展開資訊卡 (不會有動畫效果)。
- 現在資訊卡已展開,請重新測量資訊卡中元素的位置。
- 計算差異。
- 套用負轉換,將元素移回起始位置。
- 開啟動畫。
- 移除負轉換,並觀察元素在螢幕上飛到最終位置。
上述所有內容聽起來可能很耗費資源,但從使用者互動到動畫開始,有 100 毫秒的時間。如果超過這個時間,使用者就會感覺到延遲。您可以利用這段時間進行耗費資源的準備工作,以便在動畫本身執行期間降低成本。此外,大約 50 到 100 毫秒後會出現一個視窗,方便您進行整理工作,視您想執行的操作而定,這可能很有用。
動畫的昂貴工作是在前 100 毫秒內完成,在 Nexus 5 上,這項工作大約需要 70 毫秒,因此還有剩餘空間。
取得程式碼
如要進一步瞭解這個網站,我們很高興告訴您,程式碼已在 GitHub 上發布,歡迎前往查看!
除非另有註明,否則本頁面中的內容是採用創用 CC 姓名標示 4.0 授權,程式碼範例則為阿帕契 2.0 授權。詳情請參閱《Google Developers 網站政策》。Java 是 Oracle 和/或其關聯企業的註冊商標。
上次更新時間:2015-01-04 (世界標準時間)。
[[["容易理解","easyToUnderstand","thumb-up"],["確實解決了我的問題","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["缺少我需要的資訊","missingTheInformationINeed","thumb-down"],["過於複雜/步驟過多","tooComplicatedTooManySteps","thumb-down"],["過時","outOfDate","thumb-down"],["翻譯問題","translationIssue","thumb-down"],["示例/程式碼問題","samplesCodeIssue","thumb-down"],["其他","otherDown","thumb-down"]],["上次更新時間:2015-01-04 (世界標準時間)。"],[],[]]