通过设置数组和加载器函数,是否可以在加载窗口时动态地从单独的Javascript文件加载函数?
答案 0 :(得分:1)
最简单的方法是简单地将<script>
元素动态添加到DOM中。
<script>
var scripts = [ 'a.js', 'b.js', ... ];
for (var i = 0; i < scripts.length; ++i) {
document.write('<script src="' + scripts[i] + '"></' + 'script>');
}
</script>
请注意,您只能在触发DOMContentReady
事件之前执行此操作。
BTW事件Google Closure Library使用此技术。作为旁注,您可能希望将脚本连接到单个文件中,以便节省您自己(和您的用户)的HTTP请求并加快页面加载速度。
关于这一点很酷的是,在结束</script>
标记之后立即下载和评估脚本,这样您就不必等待其他任何事情才能使用它们:
<!-- Let's pretend that a.js defines a function A() -->
<script>document.write('<script src="a.js"></' + 'script>');</script>
<script>
var a = new A();
</script>
答案 1 :(得分:0)
实际上我也可以将其作为答案,而不仅仅是评论,require.js具有您正在寻找的功能,特别是查看this文档页面以查看它在浏览器中的使用情况