Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
HTML, Javascript, CSS, DHTML, XHTML
Caricare dinamicamente un file js
mercoledì 13 giugno 2012 - 12.02
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
Elenco Tags
C#
|
.NET 3.5
|
Javascript
volperubbia
Profilo
| Senior Member
375
messaggi | Data Invio:
mer 13 giu 2012 - 12:02
Ciao a tutti,
sapete se esiste un modo per caricare dinamicamente e "realmente" un file .js
via codice JavaScript?
<script type="text/javascript">
var file = document.createElement("script");
file.setAttribute("type", "text/javascript");
file.setAttribute("src", "jquery.js");
document.getElementsByTagName("head")[0].appendChild(file);
if ((typeof (jQuery)) != "undefined") {
// DI QUI NON PASSA
};
</script>
Il problema qui è che appendChild non carica realmente il .js e dall'if successivo non passa.
Avrei bisogno di qualcosa di analogo a <script type="text/javascript" src="jquery.js"></script>.
Qualche idea?
Grazie mille, Davide
luigidibiasi
Profilo
| Guru
1.077
messaggi | Data Invio:
mer 13 giu 2012 - 12:03
ho provato il codice è funziona
che vuoi dire con Realmente?
Luigi Di Biasi
http://www.dibiasi.it/
http://netsell.dibiasi.it
- ecomm software -
http://blogs.dotnethell.it/luigidibiasi/
http://yadamp.unisa.it/
- YADAMP CMS -
volperubbia
Profilo
| Senior Member
375
messaggi | Data Invio:
mer 13 giu 2012 - 14:29
Ciao Luigi, grazie.
Intendevo dire che ... non entra poi dentro il blocco if.
Così funziona:
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
if ((typeof (jQuery)) != "undefined") {
alert("jQuery"); // DI QUI PASSA
};
</script>
Così non funziona:
<script type="text/javascript">
var file = document.createElement("script");
file.setAttribute("type", "text/javascript");
file.setAttribute("src", "jquery.js");
document.getElementsByTagName("head")[0].appendChild(file);
if ((typeof (jQuery)) != "undefined") {
alert("jQuery"); // DI QUI NON PASSA
};
</script>
quindi penso non carica correttamente jquery (è un esempio, potevo farlo anche con altri .js).
Se però alert("jQuery") lo sposto dentro jquery.js, funzionano entrambi i casi. Possibile faccia sto scherzo solo con determinati oggetti e non con le funzioni?
Davide
luigidibiasi
Profilo
| Guru
1.077
messaggi | Data Invio:
mer 13 giu 2012 - 15:06
bhe credo il problema nasca dal fatto che carichi a runtime il file .js
mentre carica il file (e lo fa in modalità asincrona) passa immediatamente a valutare l'if...
non è che aspetta che il file venga caricato ... la funzione appendChild non è bloccante...
quindi, ricapitolando, manda il file js in caricamento e ti valuta l'if e dunque lo trova sempre falso...
una soluzione la trovi qua:
http://www.dibiasi.it/devp/xalp/index.htm
si usano le callback per fare queste cose...
Luigi Di Biasi
http://www.dibiasi.it/
http://netsell.dibiasi.it
- ecomm software -
http://blogs.dotnethell.it/luigidibiasi/
http://yadamp.unisa.it/
- YADAMP CMS -
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !