JS文件加载优化 ControlJS
jopen
12年前
ControlJS 主要为了是解决网页加载中Js文件的性能问题,ControlJS的原理
ControlJS本身是异步进行加载的,首先将script的标签type属性值更改为浏览器无法识别的类型,这样浏览器不会认为这是一个脚本。 本身异 步加载的ControlJS执行时开始遍历type=”text/cjs”的script标签(包括内嵌脚本),如果存在”DATA-CJSSRC”属性 将创建IMAGE或者OBJECT对象(依赖浏览器而选择),去异步预下载脚本文件并缓存文件,直到window.onload时解析并执行 javascript,同时第二次去遍历遗漏的script标签。
- downloads scripts asynchronously
- handles both inline scripts and external scripts
- delays script execution until after the page has rendered
- allows for scripts to be downloaded and not executed
- integrates with simple changes to HTML . no code changes
- solves some document.write async use cases
- control.js itself is loaded asynchronously