Improve user experience (UE)
So far, this article has focused entirely on the benefits of using JavaScript frameworks and how it makes it easier to build interactive applications. However, on the other hand, each framework has its own attractive prospects, including user interface (UI) components and user experience (UE) enhancements, which require a lot of effort.
This chapter will explore the user experience of the following frameworks: Prototype, jQuery, YUI, ExtJS, and MooTools.
Prototype
Prototype is one of the few that does not include ready-made UI components or user experience enhancements. Instead, it defers to all sister libraries of script.aculo.us (Scripty2, which is the latest known version). script.aculo.us adds extensive support for Prototype effects and behaviors. These effects include: highlight, deform, collapse, tremble, slide, and expand. script.aculo.us also supports drag and drop, sliding, Ajax real-time editing and automatic prompts. Script.aculo.us leaves the design of controls (such as slider and autocomplete) to developers and does not provide standard skins.
jQuery
Unlike the Prototype library, jQuery includes some basic user experience at its core. This is similar to some simple effects of Script.aculo.us, such as slide and fade. However, for more advanced user experience features, you need to download the jQuery UI library, which includes more effects such as dragging, zooming, and sorting. Unlike Script.aculo.us, jQuery UI also includes some small widgets or components and provides developers with a more attractive excuse, making development easier. Currently, these components include: Accordion, Datepicker, Dialog, Progressbar, Slider, and Tabs. The widgets are fully themable, and jQuery UI has a wide range of themes that you can use to suit the needs of your own website or web application. Figure 1 shows the jQuery UI Datepicker widget and Apple theme.
Figure 1: jQuery UI Datepicker widget