2011-02-04 13 views
8

Ehi, stavo solo guardando i documenti per la funzione noConflict e non dice nulla su come funziona (ovviamente). Mi chiedevo solo se qualcuno lo sapeva.Come funziona la funzione noConflict di jQuery?

Disinserisce $? (delete window.$?)

Qualsiasi suggerimento sarà molto apprezzato.

risposta

10

È possibile controllare il source code:

// Map over the $ in case of overwrite 
    _$ = window.$ 

//.... 
noConflict: function(deep) { 
     window.$ = _$; 

     if (deep) { 
      window.jQuery = _jQuery; 
     } 

     return jQuery; 
    } 
+0

Grazie, probabilmente avrei dovuto pensarci. Sto lottando per vedere come funzionerebbe comunque. _ $ Il tipo di backup? E poi lo rimette indietro quando non viene eseguito alcun conflitto? – Olical

+1

Sì, _ $ è il backup della finestra corrente. $ Var. – Distdev

+0

Sto ottenendo il codice nella versione più recente come jQuery.noConflict = function (profondità) { \t if ($ finestra === jQuery.) { \t \t finestra $ = _ $.; \t} \t se (profonda && window.jQuery === jQuery) { \t \t window.jQuery = _jQuery; \t} \t return jQuery; }; ora profondo serve quale scopo? e "if (window. $ === jQuery)" per quale uso? "if (deep && window.jQuery === jQuery)" anche per quale uso? Si prega di spiegare – Subhadeep

9

Si torna $ a quello che era prima di jQuery è stato caricato.

+0

Ah, che risponde alla mia domanda sulla risposta di Distdev. Voglio accettare entrambe le tue risposte:/ – Olical

+0

lol, accetta il suo, ho raggiunto rep cap oggi;) – Petah

+0

Ok, fatto, grazie molte! – Olical

Problemi correlati