-5

我有一个 Web 应用程序,我需要js在页面加载后加载许多脚本。我正在尝试while循环执行,如下所示:

while (....) {
  var script = document.createElement('script');

  //
  // Here i'm adding script to the html page
  //

  script.onload = function(){
    //
    // Do somthing here
    //
  }

}

但是我有一个问题,我js在不同的时间有 3 到 5 个脚本,但只正确加载了一个脚本,其他脚本或者没有时间循环加载,或者我不明白出了什么问题。如何正确加载和包含html页面许多js脚本?

谢谢你。

4

2 回答 2

2

你可能可以看看这个博客,它解释了不同的 JS 加载器......目前我正在使用 HeadJS(从 RequireJS 移开),到目前为止它真的很好。

我什至有一个 Loader.js 类,它是我在我的 HTML 代码中加载的唯一脚本(除了 head.js 本身),它的作用就像一个魅力。

请参阅下面的代码:

head.js("./js/ink/ink-all.js", 
        "./js/jquery/jquery.js", 
        "./js/html5-boilerplate/plugins.js", 
        "./js/i18next/i18next-1.6.3.js", 
        "./js/reclameAqui/ReclameAqui.js", 
        "./js/reclameAqui/controller/IndexController.js", 
        "./js/reclameAqui/controller/NavBarController.js", 
        "./js/reclameAqui/controller/FooterController.js", 
        "./js/reclameAqui/controller/ApplicationController.js", 
        "./js/angular/angular.js", 
        "./js/reclameAqui/utils/i18n/DictionaryLoader.js", 
        function() {
          var appReclameAqui;
          console.info("Loading...");
          return appReclameAqui = new ReclameAqui();
        });
于 2013-09-28T14:24:55.303 回答
0

找到解决方案。我正在使用 [].forEach 代替while循环。

于 2013-09-28T14:25:41.353 回答