首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >延迟动态添加Javascript

问延迟动态添加Javascript
EN

Stack Overflow用户
提问于 2013-09-11 13:48:26
回答 3查看 258关注 0票数 5

我需要在页面加载之后动态加载一些Javascript。

就像这样:

  • 页面加载
  • 页面使用src = "file1.js"添加脚本元素
  • 页面使用src = "file2.js"添加脚本元素

file2.js依赖于file1.js &它向file1.js中定义的对象添加属性。

问题是,file2.js首先加载(因为它较小),并立即抛出一个错误,因为它的依赖性不存在。

有没有办法让我推迟对这些新脚本的评估/执行,直到它们全部加载完毕。(实际上有两个以上的脚本)

如果我只是将这些脚本嵌入到一个页面中,通常是在编写的HTML中,那么浏览器似乎加载所有脚本,然后对它们进行评估。但是它的表现有所不同,因为我正在动态地添加脚本元素。

谢谢

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-09-11 13:50:57

有一个名为RequireJS的库,它精确地处理这种情况,并处理所有您从未意识到的问题-- http://requirejs.org/docs/start.html

票数 4
EN

Stack Overflow用户

发布于 2013-09-11 13:52:06

您不能用函数包装文件的内容并在所有加载之后调用它们吗?

票数 1
EN

Stack Overflow用户

发布于 2013-09-11 13:55:44

给你两条建议:

  1. 看看http://requirejs.org/,它解决了这个问题,以及其他问题。
  2. 或者,使用您自己的简单js加载程序函数。它将是一个函数,它使用ajax加载脚本,然后在完成时调用回调。以嵌套的方式调用此加载程序函数,以便按正确的顺序加载脚本。
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18743052

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档