Why is AJAX important for mobile website design?

Reading Time: 2 minutes

Mobile website design is becoming increasingly more complex as mobile phone technology improves. Users expect more and more of the services they have come to accept as commonplace , or standard, on desktops to be available on their mobile phones. Unfortunately mobile are currently at somewhat of a disadvantage. Although they now have similar number crunching powers to desktops, mobiles still have limitations in terms of screen size, download speed and the fact that the site architecture needs to be simplified if its is to work efficiently. In last week’s article we looked briefly at how AJAX is helping to overcome some of these limitations. This week we’ll have a look at AJAX in a little more detail.

What is AJAX?

Ajax isn’t a technology. It’s really several technologies, each flourishing in its own right, stitched together in powerful new ways. Ajax incorporates:

The classic web application model works in the following way: most user actions in the interface trigger an HTTP request back to a web server. The server does some processing—retrieving data, crunching numbers, talking to various legacy systems, and then returns an HTML page to the client. It’s a model adapted from the Web’s original use as a hypertext model, but unfortunately, what makes the Web good for hypertext doesn’t necessarily make it good for software applications. This approach makes a lot of technical sense, but it doesn’t make for a great user experience. While the server is doing its thing, what’s the user doing? Yes, that’s right: he’s waiting for each and every page to reload.

What does an AJAX application do?

An Ajax application eliminates the start-stop nature of interaction on the Web by introducing an intermediary—an Ajax engine—between the user and the server. It seems like adding a layer to the application would make it less responsive, but the opposite is true: it makes it much quicker. Instead of loading a webpage, at the start of the session, the browser loads an Ajax engine—written in JavaScript and usually tucked away in a hidden frame. This engine is responsible for both rendering the interface the user sees and communicating with the server on the user’s behalf. The Ajax engine allows the user’s interaction with the application to happen asynchronously— that is, independently of communication with the server. So the user is never staring at a blank browser window and an hourglass icon, waiting around for the server to do something.

Every user action that normally would generate an HTTP request takes the form of a JavaScript call to the Ajax engine instead. Any response to a user action that doesn’t require a trip back to the server—such as simple data validation, editing data in memory, and even some navigation—the engine handles on its own. If the engine needs something from the server in order to respond, for instance, if it’s submitting data for processing, loading additional interface code, or retrieving new data—the engine makes those requests asynchronously, usually using XML, without stalling a user’s interaction with the application.

Leave a Reply

Your email address will not be published. Required fields are marked *

Skip to content