2010-08-22 6 views
1

Je sais qu'il existe une commande comme jQuery.noConflict. Mais pour cela, il enregistre d'abord $, puis le dés-enregistre afaik.

Je veux éditer le code de jQuery 1.3.2 pour l'empêcher d'enregistrer le $ en premier lieu. Je sais que ce n'est pas la meilleure des idées, mais j'en ai besoin dans un projet particulier. Je ne suis pas sûr de savoir comment cela peut être fait? Je veux dire quelle partie de jquery.js devrais-je modifier/supprimer? Aussi, comment puis-je renommer jQuery pour dire jQ dès le début?

Nous vous remercions de votre temps. Souhaiterait des pointeurs.

Je pense que je dois supprimer les éléments suivants à partir du code jQuery (pour 1.4.2):

// Expose jQuery to the global object 
window.jQuery = window.$ = jQuery; 
+2

Pourquoi diable faites-vous cela? Vous le faites presque certainement mal. Après jQuery.noConflict, $ === undefined renvoie true. –

+0

Jetez un oeil au code source. Doit être dans l'une des dernières lignes. –

+1

Pas clair sur pourquoi vous ne pouvez pas utiliser 'noConflict' ... pourriez-vous élaborer? –

Répondre

3

noConflict remplace $ avec l'objet original, donc il n'a pas d'importance qu'il enregistre en premier.

Si vous voulez continuer à utiliser $ pour jQuery en même temps (vous ne devez pas écrire long jQuery), vous pouvez le faire:

$.noConflict(); 
jQuery(document).ready(function($) { 
    // Code that uses jQuery's $ can follow here. 
}); 
+1

Peu importe s'il a déjà un accesseur pour '$' manquant d'un setter. –

+0

ce n'est vraiment pas la réponse que je cherche. Je viens d'éditer le code jquery par défaut. –

0

ajouter jQuery.noConflict () au bas de mon fichier jQuery. C'est généralement assez bon.