关于数据异步加载引起Iscroll.js布局出错的解决方案

2021-04-07 11:26

阅读:307

相信对于前端攻城狮来说Iscroll.js,大家并不陌生,lite版本只有24kb。但可以解决

1、position:fixed在IOS端的兼容性问题

>移动端viewport可以理解为一个放大镜,滑动页面就相当于在移动这个放大镜,页面的位置并没有变。
>position:fixed将元素固定在页面某一位置,那么在滑动页面时这个元素的位置也不需要变,至少IOS之前是这么做的。

2、各浏览器对滚动条样式渲染不统一的问题
3、实现下拉刷新
4、局部滚动。
当然iscroll还可以做轮播图,放大镜等效果。

今天要说的就是用iscroll实现局部滚动出现页面布局的问题。
技术图片

问题:页面底部多出一部分或是页面显示不全,拉动回弹后内容又显示不全。
原因:数据异步加载,iscroll无法正确获取页面元素的真实高度。
解决方法:在页面请求完数据后刷新iscroll。

//自定义方法:请求成功切换页面后刷新Iscroll解决异步加载数据布局出错
view: function($this, viewData) { 
    this._super($this, viewData);
    mobile.page.iscroll("#" + mobile.page.getCurrPage().attr("id") + " .hospitalIntroduceIscroll.pageIscroll").refresh();
}

function Refresh() {
    setTimeout(function () {
        myScroll.refresh();
    }, 1000);
}


评论


亲,登录后才可以留言!