"метод, который вы могли бы использовать. посмотрите на эту ссылку, что демо это.
мы делаем динамическую вставку для JavaScript, иногда порядок имеет значение. Иногда мы решаем это, используя свойство onload; однако, если есть много внешних javascripts, и эти сценарии должны быть загружены по порядку, то что мы должны делать?
Я решил эту проблему с помощью рекурсивно определенных функций загрузки; однако не очень уверен в эффективности ... так как это сценарий, я думаю, что это ленивый eval .... Любая помощь?
//recursively create external javascript loading chain
//cautiously add url list according to the loading order
//this function takes a list of urls of external javascript
function loadScript(url) {
if( url.length == 0) {
//final function to execute
return FUNCTION;
}
var f = function(){
var script = document.createElement("script");
script.type = "text/javascript";
script.src = url.pop();
//recursion
script.onload = loadScript(url) ;
document.getElementsByTagName("head")[0].appendChild(script);
}
return f;
}
function loadScripts(urls) {
var script = document.createElement("script");
script.type = "text/javascript";
script.src = urls.pop();
script.onload = loadScript(urls) ;
document.getElementsByTagName("head")[0];.appendChild(script);
}
loadScripts(["aaa.js","bbb.js","ccc.js"]);
Спасибо!
-Извините, что сбил вас с толку .. Я добавил функцию, которая фактически вызывает loadScript (). (Я проверил это работает ..)