吾乃荆州赵子龙
吾乃荆州赵子龙
  • 发布:2016-02-26 12:05
  • 更新:2017-12-27 20:17
  • 阅读:7343

当软键盘弹出后,mui-scroll滚动不到最底端和最顶端

分类:MUI

当软键盘弹出后,mui-scroll滚动不到最底端和最顶端,导致最底端和最顶端的控件用不了。
其中,指定了min-height: 480px;

2016-02-26 12:05 负责人:无 分享
已邀请:
5***@qq.com

5***@qq.com

遇到同样的问题,亲测已解决,解决方法:先在body添加onresize事件监听软键盘是否弹出,软键盘弹出时mui('.mui-scroll-wrapper').scroll().element.scrollTop值会增加 但是 软键盘收回该值并不能归零 导致 页面无法滑动至最顶端,可在软键盘收回时设置mui('.mui-scroll-wrapper').scroll().element.scrollTop=0;可恢复正常滑动。

  • 1***@qq.com

    提示这个Cannot set property 'scrollTop' of undefined;不知道什么情况


    2018-01-05 17:25

  • 7***@qq.com

    赞。正确方案。已解决


    2018-01-19 14:47

monkeyking

monkeyking

//刷新滚动控件的参数
mui(".mui-scroll").scroll().refresh();

  • 吾乃荆州赵子龙 (作者)

    你好,感谢你的回复。想问mui(".mui-scroll").scroll().refresh(); 这个刷新在什么时候调用呢?而且我调用报错:mui(...).scroll(...).refresh is not a function


    2016-03-01 10:06

monkeyking

monkeyking

不好意思,应该是mui(".mui-scroll-wrapper").scroll().refresh(),但mui(".mui-scroll").scroll().refresh()应该不会报错的。除非你没有使用(初始化)mui的滚动控件。
//初始化滚动
mui('.mui-scroll-wrapper').scroll({
bounce: true,
indicators: true, //是否显示滚动条
deceleration: 0.0003
});

mui的滚动控件是动态计算可滚动范围的,软键盘弹出后占了页面内容,页面高度变化了,但如果你没有重新触摸上下拉,滚动控件的参数没变,可滚动的范围也没变,所以要重新计算。

  • 非法金丝剑法

    试了一下 不管用啊


    2016-03-02 16:33

  • yina

    好用的,感谢感谢


    2019-01-11 11:42

非法金丝剑法

非法金丝剑法

我也发现了这个问题 ios环境中 在一个pullrefresh组件内的scroll组件中,当触发了软键盘时,占用了页面内容,但是页面的可滚动区域只有很小一部分,但是在安卓机上没有这个现象

非法金丝剑法

非法金丝剑法

具体问题参考图片

ywg369

ywg369

无效果,在一个页面中,有多个Tab,每个里边都有mui-scroll-wrapper,则使用mui(mui(".mui-scroll-wrapper")[1]).scroll().refresh() ,在tab 1中的内容,刷新,无效果,tab 1中的文本框还是被遮挡,有知道原因的么?

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