2009-09-07 6 views
7

J'utilise généralement ce dans jquery

$(document).ready(function() { 
    //stuff 
} 

J'étais sur un site qui utilise beaucoup jquery et ils appellent à l'aide

$j(document).ready(function() { 
    //stuff 
} 

Sur ce site, ils commencent presque tout avec un j .. Est-ce juste une autre façon de le faire ou est-ce dépendant d'une version différente de jquery ou autre?

Répondre

11

Vous pouvez définir comment appeler la fonctionnalité jquery. Peut-être que ce site utilise une autre bibliothèque, qui réserve le $, et pour cette raison a utilisé l'alias $ j.

+0

bon à savoir, pouvez-vous simplement "le faire" ou avez-vous besoin de le définir/définir ailleurs? – JasonDavis

+2

http://docs.jquery.com/Using_jQuery_with_Other_Libraries#Overriding_the_.24-fonction – janoliver

+0

'$ j = jQuery.noConflict();' – gnarf

8

Ceci permet d'éviter colision avec d'autres bibliothèques avec:

jQuery.noConflict(); 

Par exemple, certaines bibliothèques comme prototype utilisent aussi le signe $, et si vous vous retrouvez à l'aide à la fois il se brisera le plus probable. Si vous développez vos fonctions jquery en utilisant $ j, ce n'est pas le cas.

+0

Dans le cas de ce site, ils disent probablement $ j = jQuery.noConflict(); - alors $ j est disponible en $ à partir de jQuery, et la signification précédente de $ (le cas échéant) est remplacée. – jnylen

4

C'est simplement une méthode pour éviter les conflits de noms. De nombreuses bibliothèques JavaScript (jQuery en fait partie) utilise $ comme raccourci. Pour plus d'informations, voir jQuery.noConflict()

2

Son pour éviter définitivement la collision avec d'autres bibliothèques. Le plus célèbre serait le prototype et le scriptaculous.

+1

également mootools. :) – janoliver

Questions connexes