H5页面性能优化
对于一个产品,性能在用户体验中是必不可缺的一环。性能优化是个长远的事情,联想到导航项目,列出以下性能优化的方案:
一. 基本的代码层面优化;
1:合理使用css
1)正确使用Display属性 Display属性会影响页面的渲染,因此请合理使用
2)display:inline后不应该再使用width、height、margin、padding以及float
3)display:inline-block后不应该再使用float
4)display:block后不应该再使用vertical-align
5)display:table-*后不应该再使用margin或者float
2:不滥用float
3:不声明过多的font-size
4:值为0时不需要单位
5:标准化各种浏览器前缀
1)无前缀应放在最后
2)CSS动画只用(-webkit- 无前缀)两种即可
3)其它前缀为 -webkit- -moz- -ms- 无前缀四种,(-o-Opera浏览器改用blink内核,所以淘汰)
6:选择器
7:避免让选择符看起来像是正则表达式。高级选择器不容易读懂,执行耗时也长
8:尽量使用id、class选择器(避免使用内嵌style)
9:尽量使用css3动画
10:资源加载原则:按需加载和异步加载
11:首次加载不超过1024KB(或者可以说是越小越好)
12:压缩html、css、js
13:减少重绘和回流
14:缓存dom选择和计算
15:尽量使用事件代理,避免批量绑定事件
16:使用touchstart,touchend代替click
17:Html使用viewport
18:减少dom节点
19:合理使用requestAnimationFrame动画代替setTimeOut
20:适当使用Canvas动画
21:TouchMove, Scroll事件会导致多次渲染
22:避免空src(空src在部分浏览器中会导致无效请求)
23:避免30*/40*/50*请求错误;
24:Favicon.ico:如果我们没有设置图标ico,则会加载默认的图标:域名目录下的favicon.ico。很多开发者没有注意到这一点,就会导致这个请求404或者500。app中时不显示,所以尽量保证ico文件大小小于4kb;
二. 框架级的优化;
使用第三方资源时,由于资源不可控,所以需要慎重选择。原则是根据项目需求与其对性能的影响去综合考虑,然后选择合适的框架以及库文件。同时需要使用异步加载的方式来加载,避免第三方资源的使用影响项目本身的性能;
三. 域名/服务端的优化;
1. 启用Gzip压缩;
2. 资源缓存,长cache:合理设置资源的过期时间,对于一些长期不更新的静态资源,时间设置长一些;
3. 减少cookie:减少cookie头信息的大小,大小越大,传输速度越慢;
4. CDN加速:图片或者css,js均可使用cdn来加速;
四. 服务端接口优化;
1. 接口合并:例如一个页面需要请求两部分以上的数据接口,则建议合并成一个,可以减少http请求数;
2. 减少数据量:去掉接口返回的数据中不需要的数据;
3. 缓存数据:首次加载请求一次后,缓存下来数据;非首次请求优先使用上次请求的数据,这样可以提升非首次请求加载速度;
H5页面性能优化的更多相关文章
- [原创]浅谈H5页面性能优化方法
[原创]浅谈H5页面性能优化方法 前阶段公司H5页面性能测试,其中测试时也发现了一些性能瓶颈问题,接下来我们在来谈谈H5页面性能优化,仅仅是一些常用H5页面性能优化措施,其实和Web页面性能优化思路大 ...
- H5教程:移动页面性能优化
随着移动互联网的发展,我们越发要关注移动页面的性能优化,今天跟大家谈谈这方面的事情. 首先,为什么要最移动页面进行优化? 纵观目前移动网络的现状,移动页面布局越来越复杂,效果越来越炫,直接导致了文件越 ...
- 移动H5前端性能优化指南
移动H5前端性能优化指南 概述 1. PC优化手段在Mobile侧同样适用2. 在Mobile侧我们提出三秒种渲染完成首屏指标3. 基于第二点,首屏加载3秒完成或使用Loading4. 基于联通3G网 ...
- 移动H5前端性能优化指南(转载)
移动H5前端性能优化指南 概述 1. PC优化手段在Mobile侧同样适用2. 在Mobile侧我们提出三秒种渲染完成首屏指标3. 基于第二点,首屏加载3秒完成或使用Loading4. 基于联通3G网 ...
- 移动H5前端性能优化指南[转]
移动H5前端性能优化指南 米随随2015.01.23 移动H5前端性能优化指南 概述 1. PC优化手段在Mobile侧同样适用2. 在Mobile侧我们提出三秒种渲染完成首屏指标3. 基于第二点,首 ...
- 第146天:移动H5前端性能优化
移动H5前端性能优化 一.概述 1. PC优化手段在Mobile侧同样适用 2. 在Mobile侧我们提出三秒种渲染完成首屏指标 3. 基于第二点,首屏加载3秒完成或使用Loading 4. 基于联通 ...
- [转]移动H5前端性能优化指南
移动H5前端性能优化指南 概述 1. PC优化手段在Mobile侧同样适用2. 在Mobile侧我们提出三秒种渲染完成首屏指标3. 基于第二点,首屏加载3秒完成或使用Loading4. 基于联通3G网 ...
- [推荐]移动H5前端性能优化指南
[推荐]移动H5前端性能优化指南 http://isux.tencent.com/h5-performance.html
- 页面性能优化-原生JS实现图片懒加载
在项目开发中,我们往往会遇到一个页面需要加载很多图片的情况.我们可以一次性加载全部的图片,但是考虑到用户有可能只浏览部分图片.所以我们需要对图片加载进行优化,只加载浏览器窗口内的图片,当用户滚动时,再 ...
随机推荐
- web移动端性能调优及16ms优化
本文只是一个索引,收集了网络上大部分关于调试及优化方面的文章,从中挑选了一些比较好的文章分享给大家. 移动端性能不及桌面浏览器性能的10分之1,特别是在android设备良莠不齐的情况下,性能显得尤为 ...
- Zepto Code Rush 2014 B - Om Nom and Spiders
注意题目给的是一个nxm的park,设元素为aij,元素aij 有4种可能U(上移),D(下移),L(左移),R(右移) 假设第i行第j列元素aij(注意元素的索引是从0开始的) 当aij为D时,此时 ...
- 洛谷 P1144 最短路计数 Label:水
题目描述 给出一个N个顶点M条边的无向无权图,顶点编号为1-N.问从顶点1开始,到其他每个点的最短路有几条. 输入输出格式 输入格式: 输入第一行包含2个正整数N,M,为图的顶点数与边数. 接下来M行 ...
- 【POJ】3974 Palindrome
http://poj.org/problem?id=3974 题意:求s的最长回文串.(|s|<=1000000) #include <cstdio> #include <cs ...
- Maven_dependencies 和 dependencyManagement 的区别
今天我在配置 sellercenter 的接口测试环境的时候,发现一些依赖的写法不太一致: 比如有的依赖的<scope>是写在子项目中的 <dependencies> 下的&l ...
- linux文本操作界面 vi面板如何复制一行
linux文本操作界面 vi面板如何复制一行 1)把光标移动到要复制的行上2)按yy3)把光标移动到要复制的位置4)按p 在vi里如何复制一行中间的几个字符?如果你要从光标处开始复制 4 个字符,则先 ...
- javamail 收邮件并解析附件
package com.zz.mail; import java.io.*; import java.text.*; import java.util.*; import javax.mail.*; ...
- springboot 添加job定时任务
@SpringBootApplication@ComponentScan("com.xx")@EnableScheduling //定时任务扫描 此处用该注解,容器启动自动扫描pu ...
- js根据浏览器窗口大小实时改变网页文字大小
目前,有了css3的rem,给我们的移动端开发带来了前所未有的改变,使得我们的开发更容易,更易兼容很多设备,但这个不在本文讨论的重点中,本文重点说说如何使用js来实时改变网页文字的大小. 代码: &l ...
- cookie的设置、获取和删除封装
在我们为了去完成数据储存,有时会用到cookie,简单封装一下cookie: <!DOCTYPE html> <html lang="en"> <he ...