Tam pracuje JSFiddle z małym przykład tutaj, że pokazuje dokładnie to, czego szukasz (chyba, że ja źle żądania): http://jsfiddle.net/9N7Z2/188/
Jest kilka problemów związanych z tą metodą dynamicznego ładowania javascript. Jeśli chodzi o podstawowe struktury, takie jak jQuery, prawdopodobnie chcesz je załadować statycznie, ponieważ w przeciwnym razie musiałbyś napisać całą ramkę ładowania JavaScript ...
Możesz użyć niektórych z istniejących programów ładujących JavaScript lub napisz własne, aby uzyskać zdefiniowane window.jQuery
.
// Anonymous "self-invoking" function
(function() {
// Load the script
var script = document.createElement("SCRIPT");
script.src = 'https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js';
script.type = 'text/javascript';
script.onload = function() {
var $ = window.jQuery;
// Use $ here...
};
document.getElementsByTagName("head")[0].appendChild(script);
})();
Wystarczy pamiętać, że jeśli trzeba wspierać naprawdę starych przeglądarek, jak IE8, load
obsługi zdarzeń nie wykonać. W takim przypadku musisz sondować na obecność numeru window.jQuery
, używając powtórnego window.setTimeout
. Jest tutaj działający JSFiddle z tą metodą: http://jsfiddle.net/9N7Z2/3/
Jest wielu ludzi, którzy już zrobili to, co trzeba. Sprawdź niektóre z istniejących ram Loader JavaScript, takich jak:
Czy istnieje powód jesteś chcąc to zrobić vs bardziej zoptymalizowany sposób? –
Niektóre odpowiedzi w tym pytaniu mogą ci pomóc - http://stackoverflow.com/questions/7474354/include-jquery-in-the-javascript-console – mrtsherman
@Scott Tak. Mam aplikację, w której podczas instalacji ładuje się zarówno jquery, jak i skrypt. Muszę załadować jquery w skrypcie, aby jquery nie łamało motywów użytkowników. Muszę warunkowo załadować javascript na pewną stronę w obrębie ich motywu. Proszę mi tylko zaufać. – ThomasReggi