前端性能优化的方法和工具,减少http请求的次数和速度
2016-10-22 20:44
549 查看
一、前端性能优化的方法和工具
cdn:Content Delivery Network内容分发网络
二、代码优化
cookie:减少cookie大小
css:将样式置顶,避免样式表达式,less/sass
js:将脚本置底,减少DOM访问,尽量不要定义全局变量,定义一些共用方法,使用gulp压缩代码,
页面:减少http请求
减少dom操作:
js和DOM可以看成两个岛,js每操作一次DOM元素便要经过一次桥,操作的次数越多那么过桥的次数越多 效率就低了 所以尽量减少次数。而且修改DOM元素会造成重绘和重排。Repaint(重绘) Reflow(重排) 重绘就是一个元素的外观被改变,但是没有改变布局(宽高)的情况 如改变
outline 颜色 背景色等等。 重排就是DOM的变化影响到了元素的宽高,浏览器会重新计算元素的宽高,会影响页面的排版,这也是reflow低效的原因,如改变窗口大小 改变文字大小 内容改变等等。解决方案是尽可能避免reflow,难以避免的话尽量将元素定位成fixed和absolute。
三、减少http请求
只有10%-20%的最终用户响应时间花在接收请求的HTML文档上,剩下的80%-90%时间花在HTML文档所引用的所有组件(图片,script,css,flash等等)进行的HTTP请求上。
1、css sprites:
css精灵,通过使用合并图片,通过指定css的backgroud-image和backgroud-position来显示元素。
.left{ background-image:url(2.png); background-position:0px 0px; width:18px; height:18px; }
.right{ background-image:url(2.png); background-position:-18px 0px; width:18px; height:18px; } .left:hover{ background-position:0px -18px; }
.right:hover{ background-position:-18px -18px; }
2、精简,合并css,js:
精简就是将Javascript或CSS中的空格和注释全去掉,用来帮助我们做精简的工具很多
3、css替代图片:
圆角 阴影 渐变 等css效果在当前主浏览器中已得到广泛的支持,而在之前是通过图片来实现这些效果的,比如圆角按钮
4、缓存一些数据
cdn:Content Delivery Network内容分发网络
二、代码优化
cookie:减少cookie大小
css:将样式置顶,避免样式表达式,less/sass
js:将脚本置底,减少DOM访问,尽量不要定义全局变量,定义一些共用方法,使用gulp压缩代码,
页面:减少http请求
减少dom操作:
js和DOM可以看成两个岛,js每操作一次DOM元素便要经过一次桥,操作的次数越多那么过桥的次数越多 效率就低了 所以尽量减少次数。而且修改DOM元素会造成重绘和重排。Repaint(重绘) Reflow(重排) 重绘就是一个元素的外观被改变,但是没有改变布局(宽高)的情况 如改变
outline 颜色 背景色等等。 重排就是DOM的变化影响到了元素的宽高,浏览器会重新计算元素的宽高,会影响页面的排版,这也是reflow低效的原因,如改变窗口大小 改变文字大小 内容改变等等。解决方案是尽可能避免reflow,难以避免的话尽量将元素定位成fixed和absolute。
三、减少http请求
只有10%-20%的最终用户响应时间花在接收请求的HTML文档上,剩下的80%-90%时间花在HTML文档所引用的所有组件(图片,script,css,flash等等)进行的HTTP请求上。
1、css sprites:
css精灵,通过使用合并图片,通过指定css的backgroud-image和backgroud-position来显示元素。
.left{ background-image:url(2.png); background-position:0px 0px; width:18px; height:18px; }
.right{ background-image:url(2.png); background-position:-18px 0px; width:18px; height:18px; } .left:hover{ background-position:0px -18px; }
.right:hover{ background-position:-18px -18px; }
2、精简,合并css,js:
精简就是将Javascript或CSS中的空格和注释全去掉,用来帮助我们做精简的工具很多
3、css替代图片:
圆角 阴影 渐变 等css效果在当前主浏览器中已得到广泛的支持,而在之前是通过图片来实现这些效果的,比如圆角按钮
4、缓存一些数据
相关文章推荐
- Web前端性能优化教程01:减少Http请求
- 前端性能优化--合并压缩js,减少http请求次数
- Web前端性能优化(一)减少Http请求
- 前端性能优化 —— 减少HTTP请求
- web前端性能优化-http请求分析工具
- 优化前端js的新方法 加快网页速度
- (转)【前端优化】通过六种方法提高网站访问速度
- 传说中的军规:网站前端和后台性能优化的34条经验和方法
- 前端性能优化:高频执行事件/方法的防抖
- Discuz x2.5 论坛性能优化速度优化的方法
- 前端性能优化:高频执行事件/方法的防抖
- 【前端优化】通过六种方法提高网站访问速度 (转http://www.cnblogs.com/fengyin/archive/2011/01/18/1938628.html)
- 网站前端和后台性能优化的34条宝贵经验和方法
- 前端性能优化:高频执行事件/方法的防抖
- 前端性能优化:高频执行事件/方法的防抖
- .net 性能优化之减少连接数据次数
- 传说中的军规:网站前端和后台性能优化的34条经验和方法
- 页面性能优化-减少HTTP请求
- Sql2005性能工具(SQL Server Profiler和数据库引擎优化顾问)使用方法详解
- Sql2005性能工具(SQL Server Profiler和数据库引擎优化顾问)使用方法详解