Cambiare sorgente libreria se non viene trovata

Alberto Buracchi

Nuovo Utente
9 Dic 2012
15
0
0
Torino
Il problema è questo:

Nella costruzione di un sito sto utilizzando JQUERY attingendo dalle librerie messe a disposizione da google perchè in genere essendo librerie largamente usate spesso sono già nella cache e quindi non necessitano di essere caricate.

Codice:
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>[/B]
<script type="text/javascript">
jQuery().ready(function (){
	$(function() {
	$("#avviso").hide();
	$(".reindir").show();
	setTimeout(function() {
  		window.location="index.php";
		}, 1000);  //lavora con tutti i browser
	});
});

... eccetera eccetera
});

Ora il problema è che talvolta mi trova a lavorare in fase di test in locale con un notebook e non sempre ho una connessione disponibile. Avrei quindi la necessità di poter dirigere la scelta sulla stessa libreria ma in locale del tipo

Codice:
<script type="text/javascrip">
if (!jQuery) {
document.write('<script src=".../libraries/jquery-1.3.2.min.js" type="text/javascript"></script>');
}
</script>

Il problema è che non posso scrivere una tag <script> dentro l'altra. Insomma così non funziona.
Qualcuno saprebbe darmi qualche indicazione per risolvere?
 

Vale2

Utente Attivo
28 Mag 2006
446
0
0
Livorno
Ciao,

per inserire un js nel document.write devi mettere il back-slash prima degli slash \/

document.write('<script src="jquery-1.3.2.min.js" type="text\/javascript"><\/script>');

quella if

if (!jQuery) non funziona, non è dichiarata

Valeria.
 

Nefyt

Utente Attivo
17 Apr 2012
1.102
0
0
Io ti consiglio di metterlo solo in locale jquery, cosi lo hai sempre li, comunque prova cosi se vuoi aggiungere il nuovo script nel caso che il primo non sia raggiungibile

Codice:
<head>
<script src="//ajax.googleapis.comx/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
....
</head>
<script>
    if(typeof jQuery == 'undefined'){
        var script=document.createElement('script'); 
        script.src=".../libraries/jquery-1.3.2.min.js"; 
        document.getElementsByTagName('head')[0].removeChild(document.getElementsByTagName('script')[0]);
        document.getElementsByTagName('head')[0].appendChild(script);
    }
</script>
 

Alberto Buracchi

Nuovo Utente
9 Dic 2012
15
0
0
Torino
Grazie a tutti per i suggerimenti.

Io ti consiglio di metterlo solo in locale jquery, cosi lo hai sempre li, comunque prova cosi se vuoi aggiungere il nuovo script nel caso che il primo non sia raggiungibile

Codice:
<head>
<script src="//ajax.googleapis.comx/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
....
</head>
<script>
    if(typeof jQuery == 'undefined'){
        var script=document.createElement('script'); 
        script.src=".../libraries/jquery-1.3.2.min.js"; 
        document.getElementsByTagName('head')[0].removeChild(document.getElementsByTagName('script')[0]);
        document.getElementsByTagName('head')[0].appendChild(script);
    }
</script>

Ho provato ad inserire il codice di cui sopra dopo </HEAD> e prima di <BODY>, ma non funziona. Non mi carica la libreria in locale.
Forse mi conviene utilizzare php?
 

Nefyt

Utente Attivo
17 Apr 2012
1.102
0
0
Grazie a tutti per i suggerimenti.



Ho provato ad inserire il codice di cui sopra dopo </HEAD> e prima di <BODY>, ma non funziona. Non mi carica la libreria in locale.
Forse mi conviene utilizzare php?
A me ha funzionato, forse jquery lo hai incluso già correttamente quindi non lo sostituisce
 

Alberto Buracchi

Nuovo Utente
9 Dic 2012
15
0
0
Torino
A me ha funzionato, forse jquery lo hai incluso già correttamente quindi non lo sostituisce

Forse ho sbagliato qualcosa perchè

in jQuery.ready(function() {...etc.

Codice:
$("#avviso").hide();

non mi nasconde l'avviso: devi abilitare l'esecuzione di codice javascript nel tuo browser!

Allora, l'ho risolto al momento così, prendendo spunto da qui

PHP:
<?php
$link = "http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js";
flush();
$fp = @fopen($link, "r");
if (!$fp) 
{
print '<script src="../../libraries/jquery-1.7.2.min.js" type="text/javascript"></script>';
}
else
{
fclose($fp); 
print '<script src="//ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js" type="text/javascript"></script>';
}
?>

Però voglio capire dove sbaglio io nel codice javascript che mi hai consigliato.
 
Discussioni simili
Autore Titolo Forum Risposte Data
F Url dinamiche da cambiare con categoria, subcategoria e title PHP 2
D Aiuto CSS in ELEMENTOR - Cambiare un testo CMS (Content Management System) 0
M Cambiare pennello a lavoro completo Photoshop 0
R Cambiare il nome dell'immagine dopo caricamento ftp HTML e CSS 0
Y cambiare sfondo di una pagina Javascript 1
E Cambiare lingua in Elements per Mac Mac e Software 2
R Non riesco a cambiare l'immagine di sfondo PHP 4
K Cambiare font size su echo stringa variabile PHP 24
V [PHP Symphony] Cambiare da ApcCache ad OpCache PHP 4
P Cambiare visualizzazione con JS Javascript 1
Web93 CAMBIARE TAG POST TITOLO DA H2 A H1 WordPress 1
L [PHP] cambiare gli if in un url semplice PHP 1
G Cambiare colore ad un record database mysql MySQL 0
Domenico_Falco1 Cambiare url in un sito con pagine dinamiche Ajax 4
L Cambiare classi solo scroll up jQuery 2
Topografo Buon 2019 (Tutti gli altri hanno scritto "Salve a tutti", cerchiamo di cambiare) Presentati al Forum 1
joomeph Cambiare Nome Utente Supporto Mr.Webmaster 3
M [Visual Basic] Cambiare lo stato in checked delle checkbox richiamando dati dal database Visual Basic 6
Koboshi Cambiare il css di una pagina con tasto "on off" HTML e CSS 5
Licantropo [MySQL] Cambiare le date MySQL 4
B [Javascript] Cambiare classe ed aggiornare relativi eventi Javascript 3
L Cambiare nome pagina facebook Annunci servizi di Social Media Marketing 4
P [HTML] Wordpress - cambiare font di un tema WordPress 1
L APPARECCHIO VOIP DA CAMBIARE Adsl e Connettività 0
T cambiare formato in uscita timestamp Database 0
O Allo scroll cambiare colore di sfondo jQuery 0
crealatualista [Javascript] Cambiare record tabella... Javascript 4
napuleone [Javascript] cambiare i parametri di stampa con js Javascript 2
DaveCricket [WordPress] [PHP] Cambiare il colore del link di una pagina attiva WordPress 3
V javascript - cambiare immagine di sfondo di un div Javascript 3
D [Javascript] Script che consenta di cambiare un'immagine in base all'ora del giorno della settimana Javascript 11
B CAMBIARE PAGINA INIZIALE PHPMYADMIN MySQL 2
webmachine [WORDPRESS] Cambiare titolo pagina articoli WordPress 0
webmachine [WOOCOMMERCE][WORDPRESS] Cambiare testo pulsante Acquista E-Commerce 0
webmachine [PRESTASHOP] Cambiare ordine prezzo-sconto-prezzoscontato E-Commerce 1
B CAMBIARE TEMPLATES PHPMYADMIN MySQL 0
otto9due Dreamweaver CC 2017 - cambiare colorazione codice Windows e Software 5
webmachine [JQUERY] Cambiare immagine al click, toggle jQuery 1
A Cambiare Risposta onclick con Switch. Javascript 1
V Cambiare colore ad un button HTML e CSS 3
E Cambiare l'option di un select con jquery jQuery 1
ecosito CSS: è possibile cambiare font con uno non di uso comune? HTML e CSS 11
Jonn [Javascript] Cambiare colore sfondo div allo scroll del mouse Javascript 3
Shyson Cambiare color all'onclick Javascript 9
elettroweb come cambiare testo Flash 0
M Cambiare dinamicamente il contenuto di un DIV Javascript 4
M Cambiare valore ad un campo in base alla selezione fatta nel menu a tendina PHP 16
R Cambiare la variabile in modo permanente PHP 3
P Cambiare il valore di un campo tabella con un pulsante cliccabile PHP 2
B cambiare sfondo alle celle della tabella Javascript 1

Discussioni simili