移动端web性能——动画
来源:互联网 发布:网络教育金融牌照 编辑:程序博客网 时间:2024/05/16 08:02
移动端web开发,性能一直是值得关注的问题,今天我就和大家分享一下,我在开发过程中遇到的一个性能问题,以及我的优化过程。
背景:
还是我那个人流量卡片,上周修复了低端安卓机(安卓4.0不触发touchend)不能滑动的问题,但是新的问题又出现了,上周五QA手拿了几个古董机找到了我,说滑动有卡顿。
问题定位:
高端机没有问题,只有低端机有卡顿现象,我认为有两种可能
1.兼容性问题:有可能就像上次不触发touchend事件一样,于是我上网查找相关问题,没有有查到兼容性问题,查到的都是性能问题。
2.性能问题:我最开始是使用translateX做的动画,高端机没有问题,低端机(安卓4.0 ios8.0)有卡顿现象,于是借鉴了m.taobao.com首页的轮播图的动画效果,通过卡发着工具发现他们用的是translate3d();于是我也把我的代码也改成translate3d()卡顿现象解决。
问题的深入:
1.影响性能的原因?
问为什么做动画影响性能,那就要从做动画时浏览器都干了什么说起,做动画时浏览器的渲染过程大致以下几个过程
2.为什translate3d()性能高于translateX()?
原因一:translate3d会调用硬件加速,所说的硬件就是GPU,GPU处里图像的能力远远高于CPU。
原因二:设置translate3d属性的元素会单独形成一个图层,而独立的图层的Layout和Paint只会影响该图层,不会影响其他图层,这样性能就会提升。
3.几种实现动画方案对比
不是所有属性动画消耗的性能都一样,其中消耗最低的是transform和opacity两个属性(当然还有会触发Composite的其他CSS属性),其次是Paint相关属性。所以在制作动画时,建议使用transform的translate替代margin或position中的top、right、bottom和left,同时使用transform中的scaleX或者scaleY来替代width和height。
参考:
http://www.w3cplus.com/animation/animation-performance.html
大漠是这篇文章的作者,真心感谢愿意分享自己知识的大神
阅读全文
0 0
- 移动端web性能——动画
- 移动端css3提高动画性能探讨
- 移动端web(1):进场动画
- web移动端页面性能优化方案
- web移动端页面性能优化方案
- Web动画性能指南
- 纯js实现移动端web端轮播图-结合transition动画
- 移动web性能测试要点
- 总体性能——动画模块性能
- 总体性能——动画模块性能
- H5 缓存机制浅析 移动端 Web 加载性能优化
- H5 缓存机制浅析 移动端 Web 加载性能优化
- H5 缓存机制浅析 移动端 Web 加载性能优化
- HTML5缓存机制浅析:移动端Web加载性能优化
- H5 缓存机制浅析 移动端 Web 加载性能优化
- H5 缓存机制浅析 移动端 Web 加载性能优化
- H5 缓存机制浅析 移动端 Web 加载性能优化
- H5 缓存机制浅析 移动端 Web 加载性能优化
- PHP 防止表单重复提交
- Java 四种线程池的用法分析
- mysql 分析各个使用技巧
- 安全框架shiro
- Activity调用finish方法,会回调哪些生命周期方法?
- 移动端web性能——动画
- 行人检测之Faster-RCNN
- Mysql 笔记(二)
- 集群与负载均衡
- c++ 四种类型转化方式
- Android studio中极光推送的快速集成
- 安全的广播LocalBroadcastManager
- cordova 状态栏颜色的变换
- git原理简介