gojaja
gojaja
  • 发布:2015-04-01 17:06
  • 更新:2015-04-03 13:05
  • 阅读:2847

tabbar webview模式,ios(6.1.3)下选项卡内新打开页面被遮挡

分类:MUI

通过搜索,查询也有类似的问题与解决方案,即通过修改如下代码:
for(var i=0;i<4;i++){
var sub = plus.webview.create(subpages[i],subpages[i],subpage_style);
self.append(sub);
if(i>0){
sub.hide();
}
将此处append置前,但我在苹果4,6.1.3系统上进行测试(hb版本5.5.1,mui版本1.4),依旧是出现了遮挡,而在安卓手机(4.4.2)上测试则没有,页面都是采取mui.openWindow方式的。

个人采取了笨办法,即在点击导航栏tab时,获取所有页面,逐个进行隐藏,然后再显示当前页面:
mui('.mui-bar-tab').on('tap', 'a', function(e) {
var wvs=plus.webview.all();
for(var i=0;i<wvs.length;i++){
wvs[i].hide();
}
mui.currentWebview.show();
.....
这样是没问题了,但感觉到不流畅了,因为要执行每个页面的隐藏操作。

请问,有没有更好的办法来进行优化处理?解决这问题,谢谢!

2015-04-01 17:06 负责人:无 分享
已邀请:
DCloud_App_Array

DCloud_App_Array

是4个sub之间相互遮挡了吗?也就是说创建时调用sub.hide()方法没有生效?
请提交完整的应用,@DCloud_IOS_XTY 关注确认。

gojaja

gojaja (作者)

不是sub遮挡,是在sub页面里打开新的页面后,然后再点击导航栏的tab选项,如demo中的通讯率,就被刚才打开的新页面遮挡了。
目前采取的方法是,除了四个sub页面和一个当前页面,其他的执行隐藏操作,也就是设置上面代码中的:
for(var i=0;i<wvs.length;i++){
if(i>4) wvs[i].hide();
}

  • DCloud_App_Array

    新开的窗口肯定会挡住前面开的窗口,再次点击导航栏的tab项,必须隐藏新开的窗口

    2015-04-08 20:44

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