我创建了一个脚本元素(document.createElement('script')
....)我通过以下方式设置了异步属性:x.async=true
这意味着脚本没有阻塞,彼此之间的执行顺序 - 不会被保留(而不是defer
(也等待dom加载)。) < / p>
问题:
但是如果我设置async属性 - 这是否意味着我必须使用document.ready?因为我可以运行一个在脚本文件中声明的方法 future 下载 - 因此错误。
答案 0 :(得分:2)
从个人经验来看,最好在异步脚本文件中使用文档就绪或窗口加载,以确保安全。
这是因为在第一次加载之后,浏览器会缓存JavaScript文件,并且根据浏览器/环境,可以从缓存加载并尝试在DOM准备好之前执行。