亿朵云
亿朵云
  • 发布:2017-05-19 16:40
  • 更新:2017-05-29 16:54
  • 阅读:1977

mui.scroll当有子webview的时候失效

分类:MUI

我的页面由两个webview构成
子webview用来做上下拉刷新
父webview里面有一个区域滚动组件
在pc浏览器的chrome模拟器里面一切正常
但是在真机调试的时候发生了以下情况:
子webview的上下拉刷新是正常的(除了下拉的提示信息看不到(这有可能是.mui-pull-top-pocket的top值的问题,,,,,暂且不讨论这个问题))

出现问题的是:
父webview的区域滚动组件失效了!!!!

在pc端上的效果图:

真机调试的效果图:

初始化子页面的代码:

mui.init({  
        subpages: [{  
            url: 'querycompany_list.html',  
            styles: {  
                top: hk_page.data.subPageTop,  
                bottom: '0px',  
            }  
        }]  
    });

初始化父页面区域滚动组件的代码

//初始化区域滚动  
mui('#js-category-items .mui-scroll-wrapper').scroll({  
  deceleration: 0.0005, //flick 减速系数,系数越大,滚动速度越慢,滚动距离越小,默认值0.0006  
                            indicators: true  
});

这里有个类似的问题http://ask.dcloud.net.cn/question/21910,但是没有答案
所以,我应该怎样解决这个问题呢?

2017-05-19 16:40 负责人:无 分享
已邀请:
亿朵云

亿朵云 (作者)

解决办法:
把父webview的区域滚动组件的最外层.mui-scroll-wrapper重命名一下,就是不要用.mui-scroll-wrapper这个名字就对了.
然后注意修改样式.

<div class="mmui-scroll-wrapper">  
  <div class="mui-scroll">  
  </div>  
</div>

估计在mui.init初始化子webview的时候会对所有的.mui-scroll-wrapper进行处理,所以把区域滚动改个名字就避免了再次处理.

    mui.init({  
        subpages: [{  
            url: 'querycompany_list.html',  
            styles: {  
                top: hk_page.data.subPageTop,  
                bottom: '0px'  
            }  
        }]  
    });

不知道是不是这个原因
反正我现在这样改了,当有子webview的时候,父webview里面的区域滚动也能够正常使用了

泡泡野蛮人

泡泡野蛮人

我也遇到同样的问题。
主页面:有左右滚动条,
子页面:有上拉刷新,
IOS上正常,android上失效。

泡泡野蛮人

泡泡野蛮人

暂时用JQUERY的navbarscroll解决了。

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