移动H5前端性能优化

2016-05-20  本文已影响141人  bonon

移动H5前端性能优化指南

主要围绕这篇博客,解析不清楚的地方

一、服务器缓存

使用缓存可以减少向服务器的请求数,节省加载时间,所以所有静态资源都要在服务器端设置缓存,并且尽量使用长Cache(长Cache资源的更新可使用时间戳)
如静态内容或者更新不频繁的的动态内容,如果缓存下来,下次Web服务器便可以在下次收到请求后立即拿出缓存好的响应结果内容返回给浏览器

1. Expires文件头:
  ExpiresDefault "access plus 10 years"

如果使用了Expires文件头,当页面内容改变时就必须改变内容的文件名。内容的文件名中加上版本号,如 test_1.0.9.js。

2.ETags
HTTP/1.1 200 OK
Last-Modified: Tue, 12 Dec 2006 03:03:59 GMT ETag: "10c24bc-4ab-457e1c1f"
Content-Length: 12195
 GET /i/yahoo.gif HTTP/1.1
Host: us.yimg.com
If-Modified-Since: Tue, 12 Dec 2006 03:03:59 GMT If-None-Match: "10c24bc-4ab-457e1c1f"
二、Gzip
三、尽早刷新输出缓冲
四、LazyLoad
五、Media Query
六、Srcset
七、避免使用DataURL
<img src="data:image/gif;base64,R0lGODlhMwAxAIAAAAAAAP///yH5BAAAAAAALAAAAAAzADEAAAK8jI+pBr0PowytzotTtbm/DTqQ6C3hGXElcraA9jIr66ozVpM3nseUvYP1UEHF0FUUHkNJxhLZfEJNvol06tzwrgdLbXsFZYmSMPnHLB+zNJFbq15+SOf50+6rG7lKOjwV1ibGdhHYRVYVJ9Wnk2HWtLdIWMSH9lfyODZoZTb4xdnpxQSEF9oyOWIqp6gaI9pI1Qo7BijbFZkoaAtEeiiLeKn72xM7vMZofJy8zJys2UxsCT3kO229LH1tXAAAOw==">
八、使用classList代替className
九、TOUCH事件优化
十、动画优化
十一、疑问

Reference
浅谈Web缓存
Web程序优化的最佳实践(服务器篇)
Lazy Load
Media Query
Srcset
dataUrl
classList
requestAnimationFrame

上一篇 下一篇

猜你喜欢

热点阅读