前端性能优化

#前端性能优化

1.CSS方面:
多个css合并,尽量减少HTTP请求
将css文件放在页面最上面
移除空的css规则
避免使用CSS表达式
选择器优化嵌套,尽量避免层级过深
充分利用css继承属性,减少代码量
抽象提取公共样式,减少代码量
属性值为0时,不加单位
属性值为小于1的小数时,省略小数点前面的0
css雪碧图
2.js方面:
遵循严格模式:"use strict";
将js脚本放在页面底部,加快渲染页面
将js脚本将脚本成组打包,减少请求
使用非阻塞方式下载js脚本
尽量使用局部变量来保存全局变量
尽量减少使用闭包
使用 window 对象属性方法时,省略 window
尽量减少对象成员嵌套
缓存 DOM 节点的访问
通过避免使用 eval() 和 Function() 构造器
给 setTimeout() 和 setInterval() 传递函数而不是字符串作为参数
尽量使用直接量创建对象和数组
最小化重绘(repaint)和回流(reflow)
3.综合:
减少http请求次数:cssspirit,data uri JS
CSS源码压缩 前端模板JS+数据,减少由于HTML标签导致的带宽浪费,前端用变量保存AJAX请求结果,每次操作本地变量,不用请求,减少请求次数 
用innerHTML代替DOM操作,减少DOM操作次数,优化javascript性能 
用setTimeout来避免页面失去响应 
用hash-table来优化查找 
当需要设置的样式很多时设置className而不是直接操作style 少用全局变量 
缓存DOM节点查找的结果 
避免使用CSS Expression 
图片预载 
避免在页面的主体布局中使用table,table要等其中的内容完全下载之后才会显示出来,显示比div+css布局慢
留下你的脚步
推荐阅读