Sto lavorando ad un'applicazione abbastanza complessa, e per tenere le cose in ordine vorrei non dover includere tutte le dipendenze javscript nel file html, vorrei invece che in ognuno dei miei file js includo solo le cose che realmente mi servono. Vorrei diciamo una cosa molto simile all'import di java.
Ho provato ad abbozzare una roba del genere:
e poi nel mio JS scrivo ad esempioCodice PHP:var JSLOADER = {};
JSLOADER.load = function (jsname, pos) {
var th = document.getElementsByTagName(pos)[0];
var s = document.createElement('script');
s.setAttribute('type','text/javascript');
s.setAttribute('src',jsname);
th.insertBefore(s, document.getElementsByTagName ("script")[0]);
};
JSLOADER.head = "head";
JSLOADER.body = "body";
JSLOADER.jquery = "http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js";
JSLOADER.jqueryUI = "http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.1/jquery-ui.min.js";
JSLOADER.hoverIntent = "http://cherne.net/brian/resources/jquery.hoverIntent.minified.js";
Pero' non funziona. Nonostante con firebug io veda che gli elementi <script> sono correttamente aggiunti al DOM, ricevo un errore quando cerco di usare JQuery. Quindi assumo che nonostante i tag siano li' il codice javascript non venga scaricato e interpretato dal browser.Codice PHP:JSLOADER.load ("resources/js/main.js", JSLOADER.head);
JSLOADER.load (JSLOADER.hoverIntent, JSLOADER.head);
JSLOADER.load ("resources/js/utilities/jquery.url.js", JSLOADER.head);
JSLOADER.load (JSLOADER.jqueryUI, JSLOADER.head);
JSLOADER.load (JSLOADER.jquery, JSLOADER.head);
JSLOADER.load ('resources/js/json-support.js', JSLOADER.head);
//A questo punto mi aspetterei di poter usare JQuery
$(document).ready(function(){
//...
});
C'e' un modo di ottenere quello che voglio?

Rispondi quotando