문제

I have tried to google for answers to this, but perhaps there isn't widely available research or perhaps I'm not using the right terms.

Basically, I would like to have some idea as to the average time it takes between key presses when typing. The reason I want to know this is I'm working on a fuzzy search that would be used in a drop down. There are some things we can do to improve accuracy in our results but they would result in slower speed. However, if such a speed would still be below a reasonable threshold for inter-keypress times, it makes sense to implement the change.

Any help would be appreciated.

도움이 되었습니까?

해결책

The other way of approaching this would be to consider the 100ms threshold which is (roughly) the amount of time that can elapse before the user actively notices a delay. Clearly the context is important as are the users expectations but in the context of typing which people perceive to be instantaneous I would guess that's probably the sort of number you want to be going for.

It probably also depends whether you're talking about interrupting the typing or whether you're talking about the delay between updating the drop down as a result of typing. The former will mean your targets need to be more aggressive as users will expect no delay in typing, but for the search results you might get away with a slightly longer delay.

다른 팁

These would vary between character pairs and would also be a function of the typing speed. For example, a person that types 60 WPM (where words are an average of five chars), is typing 360 characters per minute (which includes spaces between words, but excludes punctuation). This is about six characters per seconds which gives us an average inter-character time of 167 ms. However, this is just an average, it will be higher or lower for different character combinations.

A wild guess is that you have trouble with the interface lock up because the search takes a while. Instead of trying to guess a delay when the user has stopped typing you should do a search in the background on a separate thread. When the search is completed you check if the user has changed the value in the search box or not. If the value has changed it depends in your application if it is relevant to present the partial search result or if you want to wait for a new search.

The interval between different search attempts should be configured to give a reasonable max load on your search service or to the local computer if the search is local.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top