小程序input获取焦点导致页面左移

小程序input获取焦点导致页面左移,第1张

小程序 input 获取焦点导致页面左移的问题,一般是由于键盘d起造成的。当 input 获取焦点后,键盘会自动d出,导致页面布局发生变化,从而出现左移的情况。为了解决这个清拿败问题,可以采取以下措施:

1. 在 input 标签中添加属性:adjust-position="{{false}}",禁用键盘d起时自动调整页面位置的功能,从而避免页面左移的情况。答颤

2. 使用 fixed 布局,将 input 放置在一个固定的位置,使其不受键盘d起的影响,从而避免页面布局发生变敏颂化。

3. 使用 scroll-view 嵌套,将 input 放置在 scroll-view 中,当键盘d起时,scroll-view 会自动滚动,从而避免页面左移的情况。

4. 在 app.json 中设置 window 属性的 softKeyboardBehavior 为 "none",禁用软键盘d起时自动调整页面位置的功能,从而避免页面左移的情况。

总之,以上是一些常见的解决小程序 input 获取焦点导致页面左移的方法。开发者可以根据具体情况选择合适的方法进行处理。

本文为实际工禅基哪作简记,粗陋小笔记一篇,仅供参考。

小程序填写表单的过程中,手机键盘调起,默认情况,键盘顶部会紧贴着表单项。

如图所示:

当遇到这样的场景:

表单项输入的内容,作为关键字,向后台请求匹配数据列表。拿到数据后,在表单项下方展示列表数据,供用户点选。

就会出现问题:

展示在 input 下面的列表,会被键盘完全挡住贺码。

1、获取焦点时,使用 input 组件的 cursor-spacing 属性,设置键盘和 input 组件的间距。

2、失去焦点时,计算页面已经向上滚动的距离,加上列表项的锋冲高度,手动将整个页面向上推,防止处于页面底部的 input  失去焦点时、又掉回页面底部。影响用户体验。

手动将整个页面向上推的方式:

【注意】

wx.pageScrollTo 仅在 page 组件中有效,component 中无效!

1、在当前 input 获取焦点的时候,手动将页面向上、滚动 列表高度 那么大的距离。

2、如何滚动?

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8232587.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-14
下一篇 2023-04-14

发表评论

登录后才能评论

评论列表(0条)

保存