Lately I’ve noticed a huge variance in the usage of the term Ajax. So I’ve decided to take some time to explore the topic and share my findings in a few blog posts. In this first post, I’d like to share some info from the original blog post that defined and popularized the new interaction design approach. I’ll include some historical details, various definitions, and even a few technical bits and pieces thrown in for good measure.
In the last post, I’d like to explore the topic of Ajax accessibility. Is it true that Ajax creates websites that can’t be accessed by people with disabilities? Does Ajax hurt your website’s search engine ranking? Can Ajax be implemented in an accessible way? I’m not completely sure, but I’m hoping to find out! The Web Accessibility Initiative has created a development suite called Accessible Rich Internet Applications (WAI-ARIA) to help with accessible Ajax solutions. I’m really excited about ARIA’s possibilities, so I’ll spend some time exploring it as well.
Ajax includes a few key ingredients:
- standards-based presentation (XHTML, CSS)
- dynamic display and interaction (Document Object Model)
- data interchange and manipulation (XML, XSLT)
- asynchronous data retrieval (XMLHttpRequest, also called XHR)
It’s the fourth item, asynchronous data retrieval, that makes it truly unique and exciting. Here’s an easier way to think about it: “grabbing data from the server and displaying it on the web page without refreshing the browser.” It’s a more seamless approach to present content to the viewer since everything else in the browser window stays put while a small area updates per the viewer’s mouse click or key press. You may have experienced this before without knowing that it used Ajax. Some popular websites that include extensive use of Ajax include Google Maps, Flickr, and Gmail.Using the less strict definition — not including the hidden round trip to the server — you may have seen things like accordion navigation, sortable tables, fading yellow highlights, and photo galleries. They don’t necessarily use Ajax, but I’m including them here since they’re so prevalent in web development today. I think you know what I mean… that ubiquitous “Web 2.0” look and feel on many social networking sites (including the glossy, lickable buttons and child-friendly rounded corners).
I think that’s enough introduction on Ajax for now. In the next post we’ll take a closer look at some individual Ajax elements and how they can be used to enhance a website.