页面中内容超过一屏的时候,滚动到底部或者中间,只要是超过一屏的地方,—input聚焦的时候就会把焦点弹到页面最顶部,见视频,
小程序input聚焦时页面位移的问题
还有这种情况,借了一张网友的图:

height:100%;
overflow:scroll;
box-sizing: border-box;
padding-bottom:80rpx;
解决办法是:把最外层的包裹元素换成下面代码,然后把样式height:100%;overflow:scroll;去掉!!!
view:
<scroll-view scroll-y="{{sysScroll}}" scroll-top="{{scrollTop}}" class="scroll-hei-2 bg-def">
<checkbox-group bindchange="checkboxChange">
<input bindfocus="onfocus" bindblur="onblur" />
<input bindfocus="onfocus" bindblur="onblur" />
<input bindfocus="onfocus" bindblur="onblur" />
<input bindfocus="onfocus" bindblur="onblur" />
<input bindfocus="onfocus" bindblur="onblur" />
<input bindfocus="onfocus" bindblur="onblur" />
<input bindfocus="onfocus" bindblur="onblur" />
<input bindfocus="onfocus" bindblur="onblur" />
<input bindfocus="onfocus" bindblur="onblur" />
<checkbox-group>
</scroll-view>
js:
onfocus: function() {
this.setData({sysScroll: false})
},
onblur: function (e, param, inst) {
this.setData({sysScroll: true})
}