我想的方法是 mui.webview.close(mui.currentWebview()); mui.openWindow({.....}); 这样的话会交互会有点不好(本页面消失后才打开新页面),mui有没有什么方法打开新页面后自动close 旧业面的方法
萝卜特洛夫司机 (作者)
chender老师您好,我查了一下官网,没有发现mui.openWindow这个方法有回调的方式?
您是指mui.init中的beforeback吗?
2015-10-08 15:50
chender
h5+的规范里面webview的show方法是有回调的,我刚才看了一下mui.js,是mu没把这个回调暴露出来;
3种解决方案
1、使用var webview=plus.webview.create(...);webview.show("","",function(){回调})的方式;
2、还是使用mui.createWindow方式,给新创建的webview添加loaded事件,在loaded事件的回调中关掉之前的webview
3、在新页面的plusReady里面关掉之前的webview(要求每个页面里都有这样的代码)
2015-10-08 16:01
萝卜特洛夫司机 (作者)
回复 chender:chender老师您好,
我现在遇到的问题是,首页A跳到页面B再跳到页面C,
从页面C返回的首页A时关闭B页面,因为A页面数据比较多,
所以不想让他create新建一次,想让那个webview直接显示。
那我该如何去做呢
2015-10-08 17:33
chender
从B跳到C的时候直接把B关掉,或者在C返回A之前把B关掉就行了啊
2015-10-08 17:53
萝卜特洛夫司机 (作者)
回复 chender:不是啊,我表达错了,是点击一下C页面的返回首页的按钮。
2015-10-08 18:03
chender
你是C页面有一个“返回首页”的按钮是吧,按钮的事件这么写
function(){
plus.webview.getWebviewById("b页面的id").close();
mui.back();
}
2015-10-08 18:48
萝卜特洛夫司机 (作者)
回复 chender:可能不能用mui.back()的方法,因为C页面是注册页面(是一个通用页面),
也许,A>D>B>C。 A>E>D>B>C,页面跳转之比较麻烦。
我的想法是应用打开时。给index页面mui.init({id:"index"});
然后在C页面点击时
plus.webView.show(plus.webView.getWebviewById("index"));进行跳转。
不知这样是否可行?
2015-10-08 19:11
chender
你这样是能跳到index页面,但是你的需求不是要关闭B页面吗
2015-10-09 08:59
萝卜特洛夫司机 (作者)
额,需求总是在变得
2015-10-09 12:07