Ajax works for web apps by using server requests using the JavaScript XMLHTTPRequest object, instead of a conventional HTTP POST or GET request made when clicking a hyperlink or submit button. Since this request is a JavaScript Image Object, it allows for dynamic changes of the URL of the image without using a page refresh. When the server responds, DHTML (Dynamic Hypertext Mark-up Language) can be used to update the user interface. DHTML refers to a combination of HTML, JavaScript, and CSS (Cascading Style Sheets) that allows for custom web design features that react to user requests.
The result is that users are unaware that their web application is exchanging information with the database. It feels like their web development project is instantly responding – allowing for simpler user interfaces and easier to use web applications.
Drawbacks to Web Apps Using Ajax:
- Added complexity – dynamic updates to user interfaces introduce another level of detail to user interfaces and behavior of web development projects. Examine user interfaces to avoid overusing Ajax techniques.
- If the network has a momentary delay, the application could appear to “hang”. With a non-Ajax application, a user expects to wait after clicking a Submit button. For an Ajax application with no Submit button, there may also have to be an icon that shows background activity, e.g. turning hourglass, if the network is delayed.
- Bookmarks may not work – dynamic changes to web pages may be difficult to mark, unless developers use the URL fragment identifier to track dynamic changes.
- Check the behavior for the “Back” button in the browser – dynamic updates to user interfaces may not be in the history that the Back button uses. Developers typically use invisible IFRAMES (inline frames) to ensure the back button history tracks dynamic changes.
- Browser compatibility – if Ajax is used with Microsoft Internet Explorer v6, then ActiveX must be enabled.
Browsers that support web apps using Ajax:
- Microsoft Internet Explorer (IE) for Windows version 5.0 and above, with ActiveX enabled. Note that IE7 plans to run more command requests as native JavaScript, instead of ActiveX controls, which means broader support for Ajax.
- Mozilla, Mozilla Firefox, Netscape version 7.1 and above, and other Gecko based browsers
- Opera Web Browser version 8.0 and above, including versions of the Opera Mobile Browser version 8.0 and newer
Browsers that do not support web apps using Ajax:
- Microsoft Internet Explorer for Windows version 4.0 and below
- Microsoft Internet Explorer for Macintosh, all versions
- Opera 7 and below
- Browsers designed for use by the visually impaired
Ayoka’s custom software development culture combines the entrepreneurial feel of a start-up company with the confidence and stability of a successful professional services firm. Our vision is to become the ONLY choice for affordable enterprise software development and custom software development in AMERICA. We are proud of our consistent track record of delivering successful projects on time and on budget. We strive to provide custom software development projects that make our clients money. Get in touch today to see how Ayoka’s services can benefit your company.