1 一、页面刷新问题 2 1.父页面A跳转到子页面B,B页面修改数据后再跳回A页面,刷新A页面数据 3 (1).父页面A代码 4 window.addEventListener("pageflowrefresh", function (e) { 5 location.reload(); 6 }); 7 (2).子页面B代码 8 var main = plus.webview.currentWebview().opener();//获取父页面A对象 9 var main = plus.webview.getWebviewById('A');//或者通过A页面id获取A页面对象 10 mui.fire(main, "pageflowrefresh" );//出发A页面的pageflowrefresh方法 11 mui.redirect('A','A.html');//跳转到A页面 12 二、页面间传值问题 13 1.从A页面传值到B页面(mui.fire()方式) 14 (1).A页面代码 15 var main = plus.webview.getWebviewById('B'); 16 mui.fire(main, "pageflowrefresh",{ 17 id:100 18 }) 19 (2).B页面代码 20 window.addEventListener("pageflowrefresh", function (e) { 21 //获得事件参数 22 var id = e.detail.id; 23 }); 24 2.从A页面传值到B页面(mui.方式) 25 (1).A页面代码 26 mui.openWindow({url:'B.html',extras:{id:'100'}}); 27 (2).B页面代码 28 var self=plus.webview.currentWebview();//获取当前窗体对象 29 var receiveID=self.id;//接收A页面传入的id参数值
1 三、自定义回退事件 2 1.回退到上一页面 3 (1).回退函数代码 4 mui.back = function(){ 5 //回退时执行的代码 6 var main = plus.webview.getWebviewById('mywallet-index'); 7 mui.fire(main, "pageflowrefresh" ); 8 mui.redirect('mywallet-index','index.html'); 9 mui.currentWebview.close(); 10 } 11 12 mui.back = function(){ 13 if(!first){ 14 first = new Date().getTime(); 15 mui.toast('再按一次退出应用'); 16 setTimeout(function(){ 17 first = null; 18 },2000); 19 }else{ 20 if(new Date().getTime()-first<2000){ 21 var btn = ["确定","取消"]; 22 mui.confirm('确认退出系统?','快快长途拼车',btn,function(e){ 23 if(e.index==0){ 24 plus.runtime.quit(); 25 } 26 }); 27 } 28 } 29 };