Answers
前面的答案都是从网络入手的。说几个对浏览器加载优化的:
- 减少重绘和重排
-
CSS
优化 -
执行
js
代码的优化
提供一些浏览器加载部分的可能的优化选择:
- 可以用CSS3的transform/translate来替代margin实现布局。margin要求浏览器重新计算元素布局,而translate只是单个元素的render过程。
- 减少CSS选择符的层级。比如在写Less文件时,一个错误的习惯是嵌套写选择符,这样虽然在less组织代码的角度来看非常整洁层次化,然而生成出来的css文件内含有大量的多层次选择符,会影响前端效率。事实上建议减少css选择符层级。
- 而对于JavaScript的优化,重点是保证程序的逻辑代码是优化的,这完全取决于对业务逻辑的理解。除此之外,从技术角度来讲,模块化的JavaScript可以减少不必要的JavaScript加载,可以延迟JavaScript文件的加载。例如采取CommonJS的方式。
- 另外html模板在前端的使用非常普遍,可以把它放到js文件中预加载到客户端,减少了多次的请求。这个可以参考html2js: https://www.npmjs.com/package/html2js
- 最后,如果浏览器和Web服务器支持,可以尝试HTTP2协议,能合并减少大量的web请求。