===========加载外部 js 的方法大致有这么几种:===========
方法 说明
XHR Eval 通过 Ajax 方式获取代码,并通过 eval 方式执行代码。
XHR Injection 通过 Ajax 方式获取代码,并在页面上创建一个 script 元素,将 Ajax 取得的代码注入。
Script in Iframe 通过 iframe 加载 js。
Script DOM Element 使用 JavaScript 动态创建 script DOM 元素并设置其 src 属性。
Script Defer/Async 严格来说,这一条不算是动态加载外部脚本的方法,但很多动态加载外部脚本的方法里都会用到 sctipt 的 defer 或 async 属性,所以也把它单独列在这儿。这个方法利用 script 的 defer 属性,让脚本“推迟”执行,不阻塞页面加载,或者设置 async 属性,让脚本异步执行。遗憾的是这两个属性不是所有浏览器都支持。
document.write Script Tag 通过 document.write 把 HTML 标签 script 写入到页面中。
cache trick 先使用自定义的 script 的 type 属性(如 0daybank
文章评论