8***@qq.com
8***@qq.com
  • 发布:2016-07-31 11:39
  • 更新:2016-07-31 13:20
  • 阅读:1923

页面跳转利用template.html的问题?

分类:MUI

附件里有测试工程, 打开后,先点击底部选项卡--->最上面的手机号--->更改密码。 此时页面的跳转是正确的。

然后回到首页,点击地图里的图标打开另一个页面。 此时再去更改密码的页面,页面的跳转就发生了问题,页面变成了 地图标注跳转的页面。 我这里地图标注页面和更改密码页面的跳转利用的是template.html。不过在地图标注页面的跳转中,中间中转页面是(parking-list-title页面)。希望您能解答一下,我这里的跳转是什么原因造成的,如何修改?

2016-07-31 11:39 负责人:无 分享
已邀请:
赵梦欢

赵梦欢 - 专注前端,乐于分享!

把工程看了看,基本可以判定问题所在了,你这里用了在两个页面引用了同一个模板页面,这种做法显然是有问题的。下面我详细分析一下:

我们用模板页面是为了将相同的页面提取出来,提前预加载,然后在进去详情页的时候通过替换loadURL替换url,实现无等待窗体切换,在模板页面有这样一段代码:

mui.back = function() {  
    self.hide('auto');  
    setTimeout(function() {  
        titleElem.className = 'mui-title mui-fadeout';  
        titleElem.innerText = '';  
        if(contentWebview==null){  
            contentWebview = self.children()[0];  
        }  
        contentWebview.hide("none");  
    }, 350);  
}

contentWebview.hide("none");这里不是close,而是hide,就是为了在打开的时候保留这个模板页面。
当你在另外一个页面在此预加载这个这个模板页面,自然会报错,这个时候建议单独建一个模板,而且不建议用太多的模板。比如你那个地图点进去完全没必要用模板啊,直接页面传个参数就OK了。

而且看你这个工程里面那个上拉刷新下拉加载的也有一定问题,不排除那个报错也会阻塞程序。

  • 8***@qq.com (作者)

    两个页面引用了同一个模板页面? 这个是什么意思?

    还有一个问题,还是我发给您的那个测试项目,您把 tab-webview-subpage-about.html(地图页面)中的

    var subWebview=mui.preload({

    url:"",

    id:"sub_template",

    styles:{

    top:"0px", //把它改成45px;

    bottom:"0px"

    }

    })

    这个是影响地图页面向标注页面跳转的。 为什么其它页面跳转后top也变成了45px。 比如跳转到那个更改密码的页面?

    2016-07-31 17:09

ailsabe丶

ailsabe丶

顶一个,同问

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