
行動效能
|
423
此外,因為行動設備是觸控設備,而且“雙按”是使用者動作之一,行動設備會在回應
觸碰之前,先等待一段時間來判斷是否為雙按。在大部分的觸控設備上,都有預設 300
ms 至 500 ms 的
touchend
事件等待時間,之後才會採取動作。因此,或許你可以加入
touchend
事件的監聽器來指派點按等預設事件,讓你的應用程式更具回應性。
在增加觸控(touch)事件時,不要移除點擊(click)事件:我們希望無
論使用者與網站的互動方式為何,都可以讓網站動作(無論用他們的手
指、滑鼠或其他方式)。
為了等待雙按而加入的延遲不一定適合所有情況
9
。在 Chrome 與 Firefox 中,如果停用
縮放功能就不會有延遲。只為了避免這種延遲,而使用中繼標籤來停用縮放功能,會讓
它成為不好的使用者體驗:不要停用縮放,除非你有非常好的理由,例如在互動式的遊
戲中。
動畫
因為 Web 是單執行緒的,而且在執行緒中,JavaScript 的優先權高於 CSS 動畫,如果動
畫不是非常重要的話,請務必使用 CSS 來取代 JavaScript。
因為 CSS 動畫有較低的優先權,在網頁被載入之前不會開始動畫,因為 UI 執行緒正忙
著解析指令碼與算繪。雖然動畫不會開始,但 animation-delay 計時器不會等待網頁載入
才開始。如果你有許多延遲時間不一樣的動畫,會發現有一些動畫會在網頁載入之後同
時開始,因為動畫延遲時間比網頁載入時間短的元素都會在同樣的時間開始。
如前所述,在大部分的設備上,最順暢的動畫是每秒播放 ...