C'est une librairie open source qui simplifie l'interaction entre du HTML et du JavaScript.
Elle a été créée par John Resig en 2005 et libérée la première fois en janvier 2006 (release 1).
Construite pour combler une réelle attente des développeurs envers une simplification de manipulation programmée du DOM (Document Object Model, l'arbre des noeuds qui mémorisent tous les composants visuels ou non d'une page HTML) et comme une abstraction des problèmes de rendu entre navigateurs.
$(document).ready(function(){
// Votre code jQuery doit se trouver ici
});
Dans le but de traverser et de manipuler une page HTML, nous devons attendre jusqu'à ce que celle-ci soit prête (ready) pour être utilisée.
jQuery contient un événement “ready” qui part à l'instant même où le DOM est prêt et que l'on peut travailler avec (même si des images sont encore entrain de se charger).
Mettez votre code jQuery dans un bloc “ready” et le chargement du code se passera sans blocage.
Trouver quelques éléments
Support des sélecteurs de CSS 1 à 3.
Meilleur support des sélecteurs CSS que la majorité des navigateurs.
Propose également une série de sélecteurs maison pour rendre la vie plus facile (ex. :first, :last, :has(), :visible, :hidden).
hover() utilise les événements mouseenter et mouseleave.
Ces méthodes détectent quand un utilisateur survole ou quitte un élément avec sa souris.
Fonctionne mieux que mouseover et que mouseout.
Essayez-moi !
Délégation d'événements
La délégation d'événements est un moyens efficace pour gérer un même événement sur plusieurs éléments du DOM en même temps.
Cela fonctionne en liant l'événement à un point élevé du DOM qui va remonter les événements comme des bulles sur les autreséléments.
jQuery possède deux manières différentes de gérer la délégation d'événements : .live() (comme un remplacement direct à la méthode .bind()) et .delegate().
Fonctionne sur les éléments actuels ou futurs du DOM
jQuery, Google et Microsoft, tous offrent un hosting de jQuery sur leur CDN (Content Delivery Network, ou en français ”contenu délivré par le réseau”).
Le code est automatiquement minifié (voire zippé) et téléchargé selon le géopositionnement, ceci pour une meilleure performance.
Minifié et zippé
C'est la meilleure façon de transférer du JavaScript.
La minification enlève les commentaires, les espaces et effectue encore d'autres optimisations (Google Closure, YUIMin and Packer).
Gzipping comprime la taille du fichier de sortie encore plus loin.
jQuery passe de 283KB à 32KB (version 1.11.1, mai 2014).