Skip to content

移动端性能分析 #13

Description

@junhey

下面是在做网页的过程中考虑的一些问题,这些问题不能忽略,其中很经典的是雅虎13规。

  • 发布前必要检查项

所有图片必须有进行过压缩
考虑适度的有损压缩,如转化为80%质量的jpg图片
考虑把大图切成多张小图,常见在banner图过大的场景

  • 加载性能优化, 达到打开足够快

数据离线化,考虑将数据缓存在 localStorage
初始请求资源数 < 4
图片使用CSS Sprites 或 DataURI
外链 CSS 中避免 @import 引入
考虑内嵌小型的静态资源内容
初始请求资源gzip后总体积<50kb
静态资源(HTML/CSS/JS/Image)是否优化压缩?
避免打包大型类库
确保接入层已开启Gzip压缩(考虑提升Gzip级别,使用CPU开销换取加载时间)
尽量使用CSS3代替图片
初始首屏之外的静态资源(JS/CSS)延迟加载
初始首屏之外的图片资源按需加载(判断可视区域)
单页面应用(SPA)考虑延迟加载非首屏业务模块
开启Keep-Alive链路复用

  • 运行性能优化, 达到操作足够流畅

避免 iOS 300+ms 点击延时问题
缓存 DOM 选择与计算
避免触发页面重绘的操作
Debounce连续触发的事件(scroll / resize / touchmove等),避免高频繁触发执行
尽可能使用事件代理,避免批量绑定事件
使用CSS3动画代替JS动画
避免在低端机上使用大量CSS3渐变阴影效果,可考虑降级效果来提升流畅度
HTML结构层级保持足够简单
尽能少的使用CSS高级选择器与通配选择器
Keep it simple

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions