关于HTML5+ API plusready的兼容问题


Posted in HTML / CSS onNovember 20, 2020

Android平台提前注入5+ API,支持在plusready事件前调用

在5+ Runtime环境中,通常情况下需要html页面解析完成后才会注入5+ API,执行的顺序为:

1. 加载html页面

2. 解析html页面(下载script/link等节点引用的资源,如js/css文件)

3. 触发DOMContentLoaded事件

4. 注入5+ API

5. 触发plusready事件

这样导致5+ API生效时间比较延后,在html中引用js执行之后才能调用5+ API,通常采用以下代码调用5+ API:

document.addEventListener('plusready',function () { 
        // 在这里调用5+ API 
        // 如获取设备唯一标识 plus.device.uuid
},false);

但是在新版本中,将支持提前注入5+ API,可以在plusready事件触发之前调用5+ API,提前引入节点:

<script src="html5plus://ready"></script>

兼容写法:

if(window.plus){ 
    // 在这里调用5+ API 
}else{// 兼容老版本的plusready事件 
    document.addEventListener('plusready',function () { 
        // 在这里调用5+ API 
    },false); 
}

注意
1. 仅仅是提前注入5+ API,并不会提前触发plusready事件(仅步骤4提前操作了)
2. Android3.0及以上平台才支持提前注入,Android2.*版本无法提前注入
3. 在流应用环境中的wap2app会自动提前注入(第一次引用网络js时注入),不需要添加<script src="html5plus://ready"/>节点

到此这篇关于HTML5+ API plusready的兼容问题的文章就介绍到这了,更多相关HTML5 API plusready 兼容内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章,希望大家以后多多支持三水点靠木!

HTML / CSS 相关文章推荐
使用CSS实现阅读进度条
Feb 27 HTML / CSS
结合 CSS3 transition transform 实现简单的跑马灯效果的示例
Feb 07 HTML / CSS
CSS3 transition 实现通知消息轮播条
Oct 14 HTML / CSS
canvas绘制表情包的示例代码
Jul 09 HTML / CSS
html5中为audio标签增加停止按钮动作实现方法
Jan 04 HTML / CSS
HTML5中判断用户是否正在浏览页面的方法
May 03 HTML / CSS
使用HTML5 Canvas API控制字体的显示与渲染的方法
Mar 24 HTML / CSS
HTML5触摸事件实现移动端简易进度条的实现方法
May 04 HTML / CSS
canvas因为图片资源不在同一域名下而导致的跨域污染画布的解决办法
Jan 18 HTML / CSS
使用html5 canvas绘制圆环动效
Jun 03 HTML / CSS
AmazeUI 点击元素显示全屏的实现
Aug 25 HTML / CSS
纯CSS打字动画的实现示例
Aug 05 HTML / CSS
Html5原生拖拽相关事件简介以及基础实现
Nov 19 #HTML / CSS
Canvas获取视频第一帧缩略图的实现
Nov 11 #HTML / CSS
使用layui框架实现点击左侧导航切换右侧内容且右侧选项卡跟随变化的效果
Nov 10 #HTML / CSS
使用layui实现左侧菜单栏及动态操作tab项的方法
Nov 10 #HTML / CSS
萌新HTML5 入门指南(二)
Nov 09 #HTML / CSS
萌新的HTML5 入门指南
Nov 06 #HTML / CSS
关于webview适配H5上传照片或者视频文件的方法
Nov 04 #HTML / CSS
You might like
PHP 强制性文件下载功能的函数代码(任意文件格式)
2010/05/26 PHP
PHP实现文件上传下载实例
2016/10/18 PHP
php魔术方法功能与用法实例分析
2016/10/19 PHP
php使用正则表达式去掉html中的注释方法
2016/11/03 PHP
PHP foreach遍历多维数组实现方式
2016/11/16 PHP
PHP连接MySQL进行增、删、改、查操作
2017/02/19 PHP
javascript 二分法(数组array)
2010/04/24 Javascript
Javascript 八进制转义字符(8进制)
2011/04/08 Javascript
AngularJS基础知识
2014/12/21 Javascript
JS动态添加iframe的代码
2015/09/14 Javascript
基于jquery实现日历签到功能
2020/09/11 Javascript
新闻上下滚动jquery 超简洁(必看篇)
2017/01/21 Javascript
解析NodeJS异步I/O的实现
2017/04/13 NodeJs
Bootstrap实现各种进度条样式详解
2017/04/13 Javascript
深入理解Vue2.x的虚拟DOM diff原理
2017/09/27 Javascript
Python3实现生成随机密码的方法
2014/08/23 Python
python搭建微信公众平台
2016/02/09 Python
python基础教程之Filter使用方法
2017/01/17 Python
python批量设置多个Excel文件页眉页脚的脚本
2018/03/14 Python
Python中循环引用(import)失败的解决方法
2018/04/22 Python
python tkinter界面居中显示的方法
2018/10/11 Python
python对于requests的封装方法详解
2019/01/03 Python
pycharm软件实现设置自动保存操作
2020/06/08 Python
Python OpenCV读取中文路径图像的方法
2020/07/02 Python
HTML5 canvas绘制的玫瑰花效果
2014/05/29 HTML / CSS
澳大利亚足球鞋和服装购物网站:Ultra Football
2018/10/11 全球购物
C# Debug和Testing相关面试题
2015/10/25 面试题
介绍一下Java中标识符的命名规则
2014/02/03 面试题
统计学专业毕业生的自我评价分享
2013/11/28 职场文书
校园绿化美化方案
2014/06/08 职场文书
婚内房产协议书范本
2014/10/02 职场文书
优秀团队申报材料
2014/12/26 职场文书
2015年员工试用期工作总结
2015/05/28 职场文书
地震捐款简报
2015/07/21 职场文书
《三国志》赏析
2019/08/27 职场文书
Python实现位图分割的效果
2021/11/20 Python