Dexc
Dexc
  • 发布:2015-07-10 11:00
  • 更新:2015-10-16 11:36
  • 阅读:2914

打开有子页面的页面时,子页面会白屏一下,该怎么解决

分类:HTML5+

就是登陆页
预加载了index.html和subpage
但是打开之后 subpage的部分会闪白屏
该怎么解决

2015-07-10 11:00 负责人:无 分享
已邀请:
脉搏

脉搏

你是哪种方式创建的子页面 ?

  • Dexc (作者)

    预加载 preload,然后open

    2015-07-15 11:56

Lindp

Lindp

同样的问题,只要是打开使用了子页面这种方式加载的页面,在跳转期间就会白屏闪一下,不知道楼主解决了吗?

running

running - 生命不息,折腾不止

跳转前先把子页面给hide掉

  • Lindp

    不知道你说的是怎么实现的,子页面没有载入进来怎么hide ?看下面我的解决方案,方便你也贴一下吧

    2015-10-16 11:12

Lindp

Lindp

目前解决

var subWebView = plus.webview.create("delivery_man_sub.html", "delivery_man_sub.html", {  
        top: "45px",  
        bottom: "0px"  
    });  

    setTimeout(function(){  
        plus.webview.currentWebview().append(subWebView);  
    },100);

我没有使用官方的加载子页面,自己创建然后添加,在添加时使用setTimeout解决了白屏的问题(不加延时不好用),这种方式也是我试验出来的,具体原理还真不太清楚。怀疑是不是create方法创建时会把子页面初始化好,然后延迟追加上。

  • running

    我的似乎是黑屏闪一下

    2015-10-16 11:24

  • Lindp

    回复 running:怎么会是黑屏呢 ? 你说的应该是灰色吧,灰色是父webview的内容区背景颜色啊,是正常的。我的问题是跳转进带有子页面的页面会有白屏闪过,大概能显示半秒吧

    2015-10-16 11:27

  • 4***@qq.com

    谢谢你的方法!setTimeout偶尔还会闪一下,稍微修改了一点:


        mui.plusReady(function () {  
    var subWebView = plus.webview.create("tk-list.html", "notice-tk-list", {
    top: "45px",
    bottom: "0px",
    bounce: "vertical"
    });
    subWebView.addEventListener('loaded',function(){
    plus.webview.currentWebview().append(subWebView);
    });
    });

    在子页面的loaded事件中添加,就ok了

    2016-04-22 17:28

脉搏

脉搏

这个应该是子页面还没有加载进去,或者渲染没有跟上。

  • Lindp

    嗯。应该是子页面的事儿,只要是能保证子页面加载成功后再添加就可以

    2015-10-16 11:38

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