Ciao, vorrei importare nella mia pagina il codice javascript presente in un dominio esterno (ad esempio le librerie jquery). La cosa mi sembrava molto facile quando ho iniziato a pensarci, ma più provavo più sembrava diventare difficile!!
Una soluzione che mi è venuta in mente è di importare il file JS come testo e scriverlo nella pagina html. Ho provato un esempio di questo sito:
Il problema è che se modifico il file da leggere da "testo.txt" a http://ajax.googleapis.com/ajax/libs.../jquery.min.js (ad esempio), il contenuto del div non presenta il testo del file JS. Al contrario la pagina viene ricaricata e compare solo la scritta "false"....codice:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="it" > <head> <title>HTML.it | AJAX | Primo esempio</title> <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" /> <meta name="description" content="HTML.it | Guida ajax, request testuale" /> <meta name="keywords" content="guida, ajax, remote scripting, esempio, esempi" /> <meta name="author" content="Andrea Giammarchi per HTML.IT" /> <script type="text/javascript" src="utility.js"></script> <script type="text/javascript"><!--// // funzione di caricamento testo, // accetta una stringa contenente // il nome di un file da leggere function caricaTesto(nomeFile) { // variabili di funzione var // assegnazione oggetto XMLHttpRequest ajax = assegnaXMLHttpRequest(), // assegnazione elemento del documento elemento = prendiElementoDaId("contenuto-dinamico"), // risultato booleano di funzione usaLink = true; // se l'oggetto XMLHttpRequest non è nullo if(ajax) { // il link al file non deve essere usato usaLink = false; // impostazione richiesta asincrona in GET // del file specificato ajax.open("get", nomeFile, true); // rimozione dell'header "connection" come "keep alive" ajax.setRequestHeader("connection", "close"); // impostazione controllo e stato della richiesta ajax.onreadystatechange = function() { // verifica dello stato if(ajax.readyState === readyState.COMPLETATO) { // verifica della risposta da parte del server if(statusText[ajax.status] === "OK") // operazione avvenuta con successo elemento.innerHTML = ajax.responseText; else { // errore di caricamento elemento.innerHTML = "Impossibile effettuare l'operazione richiesta. "; elemento.innerHTML += "Errore riscontrato: " + statusText[ajax.status]; } } } // invio richiesta ajax.send(null); } return usaLink; } //--></script> <style type="text/css" media="all"> body { font-family: Verdana, Helvetica, sans-serif; font-size: 9pt; background: #FFF; color: #000; } h1 { font-size: 12pt; border-bottom: 1px solid silver; color: #009; } </style> </head> <body> <div> <h1>Request Testuale</h1> <div id="contenuto-dinamico"> Questo testo è stato inserito all'interno di un elemento di tipo div con id univoco: contenuto-dinamico . Per cambiare questo contenuto è sufficiente clickare su <!-- è importante fare caso alla costruzione di questo link: permette di leggere il testo anche senza AJAX --> questo link. </div> </div> </body> </html>
Che cosa sto sbagliando?

Rispondi quotando