(2) jQuery enables developers to write complex code more quickly, easily and succinctly. It also deals with browser incompatibility issues so that developers don’t have to concern themselves with this.
In terms of building a dynamic and interactive experience for the user, jQuery also helps developers to:
- manipulate the DOM;
- animate elements by fading or sliding them in/out, or by expanding/contracting them;
- implement drag-and-drop functionality for re-ordering and moving elements;
- implement client-side form validation;
- make Ajax requests for additional data from the server, without the web page having to be reloaded e.g. autocompletion of forms;
- create high-quality slideshows and dropdown menus.
(3) The uncompressed version of jQuery is for use during development, because it includes comments, and is easier to read and modify.
The minified version is much more compact, because the comments, whitespace and certain characters have been removed. The completed product should link to this version because it can be downloaded much more quickly by the user.