Ajax is showing up more and more online. Not that it’s a new solution – it’s been around for years – but has become increasingly popular in online applications and websites.
What is AJAX? It stands for
Asynchronous
JavaScript
and
XHR (XMLHttpRequest). Translation? It updates web content in the page without a full page refresh. This is done by retrieving data from the server and displaying data only in a portion of the page instead of refreshing the entire page.
Example 1: Auto Save
The best example I can think of to share, given its popularity, is the autosave feature in Gmail. As you’re drafting an email, the email is autosaved into your draft folder, and the ‘save’ button appears deselected, letting you know that the system is saving for you. The page never reloads, yet the user sees a change in display on the page. That’s Ajax.
Example 2: Auto Suggest
Ever had a list of search terms auto-populate in a dropdown list as you’re typing in your keyword? Yahoo’s search engine does this currently. Ajax again.
Usability considerations
At the Usability Professional Associations’ DC conference in November, John Whalen from Human Factors International spoke about the usability of Ajax, and knowing when to use Ajax as a solution, and when not to. Like any solution, using Ajax gratuitously or incorrectly can decrease usability. I love kayak.com and find that they’re using Ajax really nicely. One exception is when the user changes the flight times filters and the page data refreshes (without reloading) with new data, but very little feedback is provided to the user that this has happened. The user has to look quickly because the visual cue indicating that the data is changing is very easy to miss, displaying for half a second. If the user’s looking elsewhere on the page, they may not realize that their flight options have changed.
Progressive Disclosure
I’ve also seen Ajax being used to enable progressive disclosure. This is an interaction design term referring to presenting small amounts of content at a time, upon user prompt, so as to avoid overwhelming the user with too much information or options at a time. Banana Republic, and most of the Gap brands, use this approach on their sites. Users are able to discover additional information about an item - what colors it’s sold in, what sizes remain – and can even add the item to their cart without ever having to reload the page.
Another Ajax example using progressive disclosure is on tripadvisor.com Long lists or sections of content are displayed in a summary view, and the user has the option of discovering the complete and expanded list by clicking on the ‘Click to expand’ prompt. The page never reloads, but additional content is disclosed to the user.
In conclusion
At Forum One, we tend to work on the information architecture of content dense sites; I can see a number of ways that Ajax will be a good fit for some of the challenges we approach. The remaining questions I have are around the accessibility of Ajax, and the impact it has on site statistics. If you've got insights on those topics, please share.
Comments
Wed, 03.09.2008 09:53
FF messages
Sat, 02.08.2008 08:49
Thanks a lot for the help! This technique is really nice.
Wed, 16.07.2008 04:20
Nice article about placing and choosing right matter while desiging a web page.
Sat, 21.06.2008 14:10
very nice
Tue, 03.06.2008 05:13
Hi, Regarding Method #3: You can get rid of the long dashed focus border that shows in Firefox by adding 'overflow: [...]
Tue, 29.04.2008 17:45
Thank you for the assistance. It worked perfectly.
Mon, 31.03.2008 09:38
Ditto what Anna said. Each time a Project Mgr or a biz owner asks me, "when are we doing user testing"? They are [...]
Thu, 27.03.2008 16:35
Your points on the idea that you're testing a site, not the user, are well taken. But I think "user testing" can be [...]