HervéRenault.fr

Logo de jQuery

$(document).ready(function() {…}) ou jQuery(function($) {…}) ?

Je reviens toujours à $(document).ready(function() {…}) alors qu'il y a plus moderne donc je l'écris ici pour fixer l'idée une bonne fois pour toutes dans mon crâne.

$(document).ready(function() {…}) est toujours valable, mais la forme jQuery(function($) {…}) est totalement équivalente, à cela près qu'elle fait de $ une variable locale. Ça peut éviter des gaffes (modifier la globale $ par erreur, c'est forcément pas bon)

Comme le précise la doc de jQuery, la syntaxe $(…).ready(…) pouvait donner l'impression qu'on peut attacher l'évènement "DOM chargé" à autre chose, par exemple $('img').ready, ce qui est faux : "DOM chargé" est indépendant de tout élément de la page. La syntaxe moderne $(function() {…}) lève cette ambigüité.