HTML5移动WEP APP阅读器开发总结

学习前端也有四个月了,从一点不会,逐渐晋升为了一名前端小白,其实还是要蛮感谢我的一个同学(我就不点名了,怕他骄傲)和慕课网的。

总结一下前面的第一个小项目的一些知识。

不多说,上干货。

项目一 HTML5移动WEP APP阅读器

图片发自简书App

先说说html5web现状与趋势,缺点就是不能做一次开发和多终端适配,比如苹果手机home键,安卓手机的menu键和back键,都会影响到最后的交互设计,比如设计安卓版的时候不需要在顶部设计一个返回按钮,而ios端则需要一个back的设计。因此html5web还不能做到一次开发,多终端适配。网页app永远无法匹敌原声app。css3的媒体选择,和引入动画,可以不用以前的dom操作进行动画(daneden.github.io/animate.css/)html5web趋势就是无线趋近与Native app。

javaScript设计模式:单例模式:就是定义一个object,一个对象。去访问对象的熟悉就ok,比如var pi={attr_1:"1"},不需要多实例化,创建新的对象要占用更多的内存。

实例化:先定义一个对象,实例化多个对象比如先定义function class_A(param){this.attr_1=param},然后要使用的时候new 一个class_A()。var instance_1= new class_A("1");和单利不同,可以创建多个对象。

移动前端陷阱,减少repaint,reflow,(或者说减少对DOM元素的操作)减少页面重绘(元素的位置信息不发生变法,只是颜色等发生改变,触发repint)和页面回流(元素位置信息发生变法,触发reflow)原因是web的性能没有pc端那么好。尽量缓存可以缓存的数据,以前是http进行缓存。htm5:localStorage.setItem('date_1',JSON.stringify({a:1}))它只能存字符串,如果想存一个对象,对它进行序列化。拿出数据:localStorage.getItem('data_1')用JSON.parse(localStorage.getItem('data_1'))进行反序列化。

还有一个indexDB可以存大量数据,而且数据都有一个索引。

用css3的transform代替dom操作,css3的transform是从浏览器底层提供的一种能力,来对dom进行操作,而不是暴露api来进行操作。对性能有更好的提升。

不要给非static定位元素增加css3动画

适当使用硬件加速(canvas可以触发硬件加速)css3的transform就可以触发硬件加速,transform:translate3d(0,0,0)触发一个图层的硬件加速。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 前端面试题的简单整理,都只是大概回答,具体某些问题的具体理解后续会补上。 前端页面有哪三层构成,分别是什么?作用是...
    李欢li阅读 3,405评论 0 2
  • 常见试题 行内元素:会在水平方向排列,不能包含块级元素,设置width无效,height无效(可以设置line-h...
    他大舅啊阅读 7,290评论 1 5
  • 写在前面 在公司做过项目都知道,一款产品性能的优化非常重要,同时也是体现个人技术能力。 之前一直做算法,随后在公司...
    蓝鸥科技阅读 5,518评论 1 17
  • AJax 优化 缓存 Ajax 请求尽量使用GET, 仅取决于cookie数量 Cookie 优化 减少Cooki...
    KeKeMars阅读 13,090评论 5 89
  • 你有很喜欢一个人 喜欢到用冷漠来掩饰吗 你有很想念一个人 想念到用忙碌来代替吗 你有很相信一个人 相信到用欺骗来自...
    克利玛塔阅读 1,576评论 0 0

友情链接更多精彩内容