等烟雨
等烟雨
  • 发布:2015-02-05 11:44
  • 更新:2015-11-01 19:52
  • 阅读:2813

按手机上的返回键后预加载的页面怎么消失了

分类:MUI

按下返回键后用如下方法打出预加载的页面只剩下首页能打出来,预加载的子页面都没有了,但是点击mui定义的头部back按钮,就不会出现该问题

mui.plusReady(function(){  
                    setTimeout(function(){  
                        var array = plus.webview.all();  
                        if(array){  
                            for(var i=0,len=array.length;i<len;i++){  
                                    console.log(array[i].getURL());  
                                }  
                        }  
                    },5000)  
                });
2015-02-05 11:44 负责人:无 分享
已邀请:
DCloud_UNI_FXY

DCloud_UNI_FXY

你是否自己重写了mui.back方法?

等烟雨

等烟雨 (作者)

没有重写子页面的,只重写了主页面的,应该没有影响吧,不过好像预加载页面并没有消失,只是跳转到子页面后没有执行子页面的任何东西,我通过自定义事件传值了,可能是传值那里出问题了吗?
主页面代码:
var listPage = mui.preload({
url:'List_test.html',
id:'List_test.html'
});

$.plusReady(function() {
plus.navigator.closeSplashscreen();
mui('#backGround').on('tap', 'a', function(e) {
var uid;
var id;
var type;
var strId = this.getAttribute('id');
var strHref = this.getAttribute('href');
console.log(strId+" "+strHref);
var strs= new Array(); //定义一数组
strs=strId.split("_"); //字符分割
for (i=0;i<strs.length ;i++ ){
uid=strs[0];
id=strs[1];
type=strs[2];
}
//触发子页面的getParam事件
mui.fire(listPage,'getParam',{
uid:uid,
pid:id,
});
//打开子页面
mui.openWindow({
id:strHref,
url:this.href
});
});
});

子页面接收参数代码:
window.addEventListener('getParam',function(event){
//获得事件参数
uid = event.detail.uid;
pid = event.detail.pid;
console.log(pid);//一按返回键,再点进来这个子页面,这里就打不出来了

            });
等烟雨

等烟雨 (作者)

没有重写,只是重写了首页的退出的提示,应该没有影响吧,能不能重写一下mui.back方法写成mui定义的头部back按钮的方法,这个方法怎么写啊在js里找不到

DCloud_UNI_FXY

DCloud_UNI_FXY

把你的工程发出来

黑虎

黑虎

不知道这个问题解决了没?
我们也出现相同问题。
不管点击导航back,还是返回键,都出现返回就出现的预加载的sub页面丢失;
结构是这样的
首页.html->列表页.html(此处预加载“详情.html”)->详情页(含有sub子页面)
返回首页,再次进入点击列表进入详情页,就出现“sub子页面”已经不存在了内存中了

该问题目前已经被锁定, 无法添加新回复