我有一个JS代码库,可以从文件夹加载.而不是<script src='...'></script>在HTML文档的标记中逐个键入行,有没有一种方法只链接一个Javascript文件,组织并自动加载其他JavaScript文件.
我知道Dojotoolkit正在使用这种技术,其中只有一个JS文件被加载到客户端的计算机上,一旦在浏览器中请求了<script>代码,就会生成20个带有标记的其他JS代码.
这是您需要的代码:
// Create
var bodyEl = document.body;
var scriptEl = document.createElement('script');
scriptEl.type = 'text/javascript';
scriptEl.src = url;
bodyEl.appendChild(scriptEl);
Run Code Online (Sandbox Code Playgroud)
把它放到一个函数中,有一个包含所有javascript文件的数组,并为每个文件调用该函数.
使用DOM的好处是document.write在一些有趣的实例中不起作用.有关这方面的更多信息: document.write()vs插入DOM节点:保留表单信息?
代码取自开源项目jQuery Sparkle:http: //github.com/balupton/jquery-sparkle/blob/master/scripts/resources/jquery.appendscriptstyle.js#L103