2014-12-17 24 views
5

Mentre sul posto con un client, proponevo un aggiornamento della versione jQuery utilizzata dal client (cioè da jQuery 1.5 a 1.11). Il cliente ha una preoccupazione minore che la loro versione di TimeGlider non sia compatibile con il jQuery più recente. Non ho familiarità con TimeGlider, quindi hanno navigato (con Chrome) in una pagina con TimeGlider per dimostrarmelo.Come posso "aggiornare" la versione jQuery all'interno del DOM?

Ho pensato di essere lucido e di "aggiornare" la libreria jQuery del DOM, utilizzando strumenti di sviluppo, per risolvere immediatamente la domanda. Conosco one way to import the jQuery 1.11 library, ma questa tecnica richiede un modo semplice per rimuovere prima la vecchia versione di jQuery. Forse c'è un approccio migliore.

Naturalmente questo è semplice da modificare all'interno del codice sorgente, ma volevo davvero farlo all'interno del DOM, tramite gli strumenti di sviluppo.

Come posso "aggiornare" la versione jQuery all'interno del DOM?

+0

Per quanto ne so, non c'è bisogno di rimuovere la vecchia versione, perché il nuovo tag script si aggiunge sovrascriverà la variabile jQuery con la versione più recente. In realtà devi usare l'opzione noConflict se vuoi essere in grado di utilizzare più versioni jQuery sulla stessa pagina, quindi la soluzione dei tag script dovrebbe funzionare. – Zack

+0

Se il plugin è ben scritto, ha già un riferimento al jquery "vecchio" passato come parametro (la sostituzione del jquery globale non avrà alcun effetto). Per non parlare del fatto che qualsiasi inizializzazione ha già fatto è stata già eseguita con la vecchia versione. –

risposta

16
  • Passare alla scheda Sources.
  • trovare il file jQuery (cmd +p/Ctrl +p).
  • Add a breakpoint nella prima riga (non di commento) della sceneggiatura.
  • Ricarica pagina.
  • Quando l'esecuzione si interrompe, selezionare l'intero contenuto del file e sostituirli con il contenuto di jquery-1.11.0.min.js.
  • Salvare le modifiche (cmd +s/ctrl +s).
  • Il file verrà ricompilato e il sito Web eseguirà jQuery 1.11.0.

recompiled version of jQuery

+0

Ottima soluzione. Sento che hai avuto un simile bisogno di farlo prima? –

+2

@JeromyFrench TBH L'ho capito solo ora :) L'altra soluzione che mi viene in mente è creare un'estensione che restituisca jQuery 1.11 ogni volta che questo specifico file jquery.js è richiesto dal browser ([buon punto di partenza] (https: //developer.chrome.com/extensions/webRequest#type-BlockingResponse)). O utilizzare qualsiasi app proxy, come [Charles] (http://www.charlesproxy.com/). –

+2

Bene, mi hai insegnato una nuova, potente funzionalità per gli strumenti di sviluppo. Grazie. –

Problemi correlati