plus初始化原理及plus is not defined,mui is not defined 汇总
关于plus是哪里来的问题
plus是5+Runtime的内部对象。
就像chrome浏览器里有chrome.开头的一些对象方法,5+runtime内部内置了plus对象。
因为plus和mui不一样,plus是引擎级别的,不需要前端框架。而mui是前端框架,所以是要引入mui.js才能使用的。
不要在没有plus和mui的环境下调用相关API
普通浏览器里没有plus环境,只有HBuilder真机运行、打包后、或流应用环境下才能运行plus api。
在普通浏览器里运行时plus api时控制台必然会输出plus is not defined错误提示。
mui作为一个前端框架,你必须保证当前页面引入了mui.js。否则也会出现mui is not defined。
不要在plus和mui未完成初始化时调用相关API
就像在dom初始化完成前(DOMContentLoaded)去操作dom,就会报错是一样的道理。
plus和mui都需要初始化,在初始化完成后调用再调用。
一般我们在plusready的回调事件里调用plus api。
document.addEventListener('plusready',function () {// 在这里调用plus api},false);
执行更高效的写法是这样,如果plus已经存在,就直接使用
function plusReady(){// 在这里调用plus api}if(window.plus){plusReady();}else{document.addEventListener('plusready',plusReady,false);}
mui框架对此进行了封装,写法更简单:
mui.plusReady(function(){// 在这里调用plus api});
事实上,mui作为一个框架,也有初始化的过程,但mui的初始化过程在DOMContentLoaded完毕后就结束了。
mui ready的写法是这样,但一般无需使用。
mui.ready(function () {})
关闭Webview窗口
<span style="color:#474747"><code>
<span style="color:#f0e68c"><strong>void</strong></span><span style="color:#ffffff"> plus</span><span style="color:#ffffff">.</span><span style="color:#ffffff">webview</span><span style="color:#ffffff">.</span><span style="color:#ffffff">close</span><span style="color:#ffffff">(</span><span style="color:#ffffff"> id_wvobj</span><span style="color:#ffffff">,</span><span style="color:#ffffff"> aniClose</span><span style="color:#ffffff">,</span><span style="color:#ffffff"> duration</span><span style="color:#ffffff">,</span><span style="color:#ffffff"> extras </span><span style="color:#ffffff">);</span></code></span>
说明:
关闭已经打开的Webview窗口,需先获取窗口对象或窗口id,并可指定关闭窗口的动画及动画持续时间。
参数:
- id_wvobj: ( String | WebviewObject ) 必选 要关闭Webview窗口id或窗口对象
若操作窗口对象已经关闭,则无任何效果。 使用窗口id时,则查找对应id的窗口,如果有多个相同id的窗口则操作最先打开的窗口,若没有查找到对应id的WebviewObject对象,则无任何效果。 - aniClose: ( AnimationTypeClose ) 可选 关闭Webview窗口的动画效果
如果没有指定关闭窗口动画,则使用默认值“auto”,即使用显示时设置的窗口动画相对应的关闭动画。 - duration: ( Number ) 可选 关闭Webview窗口动画的持续时间
单位为ms,如果没有设置则使用显示窗口动画时间。 - extras: ( WebviewExtraOptions ) 可选 关闭Webview窗口扩展参数
可用于指定Webview窗口动画是否使用图片加速。
返回值:
void : 无
示例:
<!DOCTYPE html>
<html><head><meta charset="utf-8"><title>Webview Example</title><script type="text/javascript">
// H5 plus事件处理
function plusReady(){
}
if(window.plus){plusReady();
}else{document.addEventListener("plusready",plusReady,false);
}// 关闭自身窗口
function closeme(){var ws=plus.webview.currentWebview();plus.webview.close(ws);
}</script></head><body>关闭Webview窗口<br/><button onclick="closeme()">close</button></body>
</html>
plus初始化原理及plus is not defined,mui is not defined 汇总相关推荐
- mui is not defined的原因
今天调试的时候,显示mui is not defined,如下图所示 原因是我自己写的index.js文件导入的时候放在了mui.js之前,导致加载index.js文件的时候还没有加载mui.js文件 ...
- inputstream 初始化_如何完美回答面试官问的Mybatis初始化原理!
前言 对于任何框架而言,在使用前都要进行一系列的初始化,MyBatis也不例外.本章将通过以下几点详细介绍MyBatis的初始化过程. MyBatis的初始化做了什么 MyBatis基于XML配置文件 ...
- 当面试官问我Mybatis初始化原理时,我笑了
对于任何框架而言,在使用前都要进行一系列的初始化,MyBatis也不例外.本章将通过以下几点详细介绍MyBatis的初始化过程. MyBatis的初始化做了什么 MyBatis基于XML配置文件创建C ...
- 110:Mybatis初始化原理
对于任何框架而言,在使用前都要进行一系列的初始化,MyBatis也不例外.本章将通过以下几点详细介绍MyBatis的初始化过程. MyBatis的初始化做了什么 MyBatis基于XML配置文件创建C ...
- python解析XML文件报错 entity not defined Entity ndash not defined
报错 在处理数据集时需要解析xml文件获取需要的数据,一开始采用python自带的xml模块来做,即xml.dom.minidom,然后报错 entity not defined 也没显示是在xml文 ...
- 深入分析vhost-user网卡实现原理 —— VirtIO Features协商
文章目录 前言 数据结构 设备模型 device VirtIONetPCI VirtIONet NICState NetClientState netdev NetVhostUserState vho ...
- iOS之深入解析对象isa的底层原理
对象本质 一.NSObject 本质 OC代码的底层实现实质是 C/C++代码 ,继而编译成汇编代码,最终变成机器语言. ① clang C/C++ 编译器 Clang 是⼀个 C 语⾔.C++.Ob ...
- c++中int向量初始化_以不同的方式在C ++中初始化2D向量
c++中int向量初始化 Prerequisite: Initialize 1D vector 先决条件: 初始化一维向量 Before discussing about the initializa ...
- Android中CursorLoader的使用、原理及注意事项
前言 最近在项目中涉及到了即时聊天,因此不可避免地要用到实时刷新的功能,因为在以前的项目中见到别人使用CursorLoader+CursorAdapter+ContentProvider的机制来实现实 ...
最新文章
- 081_Introducing trigger handler class
- give root password for maintenance 启动异常的解决
- 零基础学python用什么书-零基础自学python3 好用的入门书籍推荐
- 少儿python编程培训-无锡江阴少儿Python编程培训一对一
- 如何成为一个伟大的 JavaScript 程序员
- python加法器_[python bottle] 网页加法器
- 前端windows下常用的CMD 命令归纳
- linux shell 执行目录,bash shell脚本执行的几种方法
- 防止服务器变为代理服务器
- java hashmap用法_备战金九银十:Java核心技术面试题100+,助你搞定面试官
- CNN(卷积神经网络)
- 全解小程序猜数字游戏 04《 程序员变现指南之 微信QQ 小程序 真的零基础开发宝典》
- reuntion 题解
- 【侯捷】C++面向对象程序设计
- 并发编程(三)---共享模型之管程
- UVa 10934 Dropping water balloons:dp(递推)
- mysql 查询去除小数点_SQL查询金额去掉小数点后面的零
- python http2_实战 | Python使用HTTP2实现苹果原生推送
- C语言保留小数点后一位
- Walgreens以myWalgreens重塑美国最大的卫生健康忠诚度计划,为顾客带来更加丰富的福利