阅读如何加快页面加载的Google recommendations:
推迟加载未调用的JavaScript函数 startup 减少了初始下载大小,允许其他资源 并行下载,加快执行和渲染速度 时间。
详细
与样式表一样,必须下载,解析和执行脚本 在浏览器开始呈现网页之前。再说一次,即使是 脚本包含在缓存,处理的外部文件中 脚本下面的所有元素都会被阻止,直到浏览器加载 来自磁盘的代码并执行它。但是,对于某些浏览器而言 情况比样式表更糟糕:JavaScript正在发生 处理后,浏览器会阻止所有其他资源 下载。 [...]
对于许多脚本密集型应用程序,大部分JavaScript 代码处理用户启动的事件,例如鼠标单击和 拖动,表单输入和提交,隐藏元素扩展等等 上。所有这些用户触发的事件都在加载页面后发生 并触发onload事件。因此,大部分延迟了 "关键路径" (启动时加载主页的时间)可能是 通过推迟加载JavaScript直到它实际上来避免 需要。虽然这个"懒惰"装载方法不会减少总量 JS有效负载,它可以显着减少所需的字节数 加载页面的初始状态,并允许剩余的字节 在后台异步加载。
要使用此技术,首先应识别所有JavaScript onload之前文档实际上没有使用的函数 事件即可。对于任何包含超过25个未调用函数的文件,请移动 所有这些函数都是一个单独的外部JS文件。
如何识别加载时未使用的脚本?
说,我有责任优化我第一次看到的网络解决方案,并且使用了许多我不知道他们正在做什么的脚本。有没有办法监控和分离"懒惰"和"早期"脚本?