2014-10-07 45 views
0

我有一個相當矮胖的頁面,其中有很多可點擊的元素,我正在測試一個相對較慢的計算機(〜1GHz處理器)。頁面的一部分是作爲頁面一部分的屏幕鍵盤。我將jQuery用於所有按鈕的事件委派,並對mousedown或mouseup事件(一個或另一個,不是同時執行)作出反應。在測試這兩種情況時,似乎mouseup事件比mousedown更慢且不太可靠(有時錯過按鈕,或者屏幕在響應之前稍微掛起)。如果快速連續擊中大量按鈕,情況尤其如此。比mouseup事件固有地慢嗎?

是否有任何鼠標按下原因應該是天生更快/比鼠標鬆開更好?事件代表團會對此產生影響嗎?對於用戶體驗,我贊成mouseup事件,所以我想知道是否有任何事情可以做,以提高鼠標的可靠性。

+0

你是否對不同的瀏覽器同樣的問題? – Spokey 2014-10-07 07:19:21

回答

1

經典用戶點擊觸發器mousedownmouseup
兩者之間的時間通常是介於〜50ms的
在如此短的時間週期內瀏覽器可能正忙於由於mousedown事件冒泡和傳播發射過程,特別是如果你的約束太多處理遠了DOM樹喜歡document"html, body"避免那

另外,mouseup可能最終成爲從未註冊
如果某些進程佔用太多的時間,或者你簡直太快了用鼠標在mouseup可能不超過目標元素在它觸發的時間,因此從來沒有發射該事件