2010-11-04 70 views
13

我曾試着向谷歌尋求解決方案,但也許沒有廣泛的研究,或許我沒有使用正確的術語。鍵入時的平均關鍵時間

基本上,我想對打字時按鍵之間的平均時間有一些想法。我想知道這一點的原因是我正在進行模糊搜索,將在下拉菜單中使用。我們可以做一些事情來提高結果的準確性,但會導致速度變慢。但是,如果這樣的速度仍然低於按鍵時間的合理閾值,則實施該變化是有意義的。

任何幫助,將不勝感激。

回答

7

解決這個問題的另一種方法是考慮100ms閾值,該閾值(大致)是在用戶主動注意到延遲之前可以經過的時間量。很顯然,用戶期望的背景非常重要,但在打字人們認爲是瞬間的背景下,我猜想這可能就是你想要的那種數字。

這可能還取決於您是在討論是否打斷打字,或者您是否在談論因鍵入而更新下拉菜單之間的延遲。前者意味着你的目標需要更加激進,因爲用戶預計在打字時不會有任何延遲,但是對於搜索結果,你可能會稍微拖延一段時間。

+0

我不認爲你有任何背後的100ms評論有任何研究/文檔的機會?這會有助於說服我的架構師接受稍慢的速度(現在在搜索中每個術語大約25-30ms,所以肯定有迴旋餘地)。 – AHungerArtist 2010-11-04 16:54:12

+0

我最初從雅各布尼爾森的研究中得到了這個數字。看看http://www.useit.com/papers/responsetime.html – wjbeau 2010-11-04 16:58:18

+0

非常感謝。這正是我希望找到的那種東西。 – AHungerArtist 2010-11-04 17:14:28

9

這些字符對之間會有所不同,也可能是打字速度的函數。例如,一個輸入60個WPM(其中單詞平均爲五個字符)的人正在輸入每分鐘360個字符(其包括單詞之間的空格,但不包括標點符號)。這大約每秒六個字符,這給了我們一個167毫秒的平均字符間時間。但是,這只是一個平均值,對於不同的字符組合來說,它會更高或更低。

2

一個瘋狂的猜測是,你遇到接口鎖定問題,因爲搜索需要一段時間。當用戶停止輸入時,不要試圖猜測延遲,而應該在單獨的線程中在後臺執行搜索。搜索完成後,檢查用戶是否更改了搜索框中的值。如果值已更改,則取決於您的應用程序是否與呈現部分搜索結果相關或者是否希望等待新搜索。

不同搜索嘗試之間的間隔應配置爲在搜索服務或本地計算機上給出合理的最大負載(如果搜索爲本地計算機)。