Often we will do something just because we have the technical ability to do it. When performing a live search (ajax-enabled searching), it is just as easy technically to get the results on each keystroke.
Dunston Orchard of Apple has a nice approach to LiveSearch that he presented. Check it out at 1976design.com/blog. (I suggest searching for 'puppy')
Here is the user experience issue. When the user types in an Ajax-enabled field do they want the search to happen at every keystroke? This is the approach Bitflux took. Like Dunston, I find this sort of approach annoying. Dunston provides several nice touches to his live search feature.
- as soon as typing stops (appears to be half second) the search initiates.
- you know it initiated because you get the apple style spinning wait circle
- the list fills in
- details show in very cool callouts as you hover over the summary results.
One interesting question. Should the search button also be available? Dunston shows it when javascript is disabled (since live search is turned off). But does not if JS is enabled (live search is on). I believe he has done the only correct thing. By the time they get around to hitting the search button, the search is either already started or in process.
However, I experience about a half-second confusion as you wait for the search to initiate.
Maybe allowing the Enter or Tab to initiate the search instantly and would alleviate the confusion (at least for the keyboarders).
BTW, while you are his site read about the panarama banner at the top. Marvel at his slide downs-- way cool and check out the balloon details that show as you mouse over the live search results.
Anyway, the moral of the story is: Remember the user is more important than technical prowess. Just because you can do it, does not mean you should do it.
1 comment:
And its a lot easier to critique a method once you've seen it than it is to come up with the right method the first time :-)
Thanks for being one of the earliest examples. It helped us in some work we were doing at Sabre with a look up field component.
Post a Comment