mui开发之plusready和init
初学mui会发现⼤量的demo中,都需要调⽤mui.init()和mui.plusReady(),可见这两东西在app开发中的重要性
⾸先请注意⼀点,如果不是做app开发(⾮hbuilder基座运⾏),做web开发的话(在浏览器运⾏html),plusReady是没有意义的,不会执⾏,为什么?
啥是html5+,和html5有什么区别?
所谓的html4.0标准我们就不去讨论了,这是早期对浏览器标记语⾔解析的规范,在app开发中我们通常使⽤的是html5
html5:万维⽹的核⼼语⾔、标准通⽤标记语⾔下的⼀个应⽤超⽂本标记语⾔(HTML)的第五次重⼤修改,于2014年发布,之后的浏览器必须遵守这个开发规范实现对html,css,javascript的解释,其中css遵守最新的css3规范,javascript遵守最新的ECMAScript6。
html5+:其实还是html5,只是在html5针对⼿机开发app时补充了对⼤量原⽣功能⽀持,包括摄像头,wifi,震动,gps等等的软硬件功能,通过js封装调⽤安卓原⽣接⼝使得h5开发app更加的强⼤,所以称之为html5+(app的开发必须要使⽤html5+)
css最新
plusReady:对于 HTML5+应⽤的页⾯有⼀个很重要的 “plusready”事件,此事件会在页⾯加载后⾃动触发,表⽰所有 HTML5+ API 可以使⽤, 在此事件触发之前不能调⽤ HTML5+ API
init:mui框架将很多功能配置都集中在mui.init⽅法中,要使⽤某项功能,只需要在mui.init⽅法中完成对应参数配置即可,⽬前⽀持在mui.init⽅法中配置的功能包括:创建⼦页⾯、关闭页⾯、⼿势事件配置、预加载、下拉刷新、上拉加载。
页⾯初始化:必须执⾏mui.init⽅法
mui个⼈习惯:
1.每个⽤到mui的页⾯都调⽤下mui.init,直接放在js最前⽅
2.除了function定义之外全都写在plusReady之中,function调⽤也放在其中,毕竟做app开发调⽤html5+api⼗分的频繁,就像jq的$(document).ready()⼀样的道理,尤其是出现plus.的⼀定放在plusReady⾥⾯!
⽬前尚不清楚plusReady过分臃肿对性能是否造成伤害。理论上只是在html5+加载完之后执⾏其中的代码罢了,是不会影响性能,只会晚⼀点执⾏(延迟并不会感受到)
关于mui plusReady的注意点:
mui.plusReady()中的代码不执⾏
可能1:
你在浏览器下运⾏了html
可能2:
plusReady事件仅在webview⾸次创建时触发,使⽤mui.openWindow⽅法多次打开已存在的同样id的webview时,是不会重复触发plusReady 事件的; 因此若业务写在plusReady事件中,可能会出现执⾏结果和预期不⼀致的情况;此时可通过⾃定义事件触发
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论