[youzan/vant]van-actionsheet 在移动端IOS 11.1.1中光标向上偏移

2024-05-22 812 views
8

代码如下,在pc端Chrome中模拟设备中显示正常,但是到了真机上边input输入框的光标就出现偏移,没有嵌套在 van-actionsheet中时是正常的,但是一嵌套就出现偏移 `

               <van-field type="number" :min="1"  label="单价¥"  placeholder="单价"/>
             <van-cell class="van-address-edit__area" title="数量">
                <van-stepper min="1" max="100" step="1" default-value="0" />
             </van-cell>
            <van-button block type="primary" >保存</van-button>

` g3pv55c73 6xpy n jq8 9i

回答

8

另外,使用fastclick之后 点击以上的input 时,首次光标不显示,第二次之后光标显示 chrome 中报错 Uncaught DOMException: Failed to execute 'setSelectionRange' on 'HTMLInputElement': The input element's type ('number') does not support selection. 请问可有处理办法?麻烦大大了。

1

@lemongeek

  1. 光标错位的问题已记录,应该是 ios 11 系统下 fixed 布局导致的问题,我们会看下有没有合适的兼容方式
  2. fastclick 的问题请到对应仓库提问,谢谢
6

是不是应该打开这个issue呢,毕竟这个问题还没有解决,方便更多人了解到这个bug

0

@mpandar 这个属于系统 bug,如果有合适的方案可以拿出来讨论下

7

@chenjiahan 木有太好的办法,只能把body改为相对布局,然后弹出层改为了绝对布局,然后获取当前滚动页面的高度,弹出层设置top,但是总感觉处理的很不优美...而且弹出层会跟着滚动...

6

@mpandar 这种实现缺陷更大,还不如光标错位~

2

@chenjiahan 还算是能解决我的问题吧,毕竟输入数据这块不算是有异常了,的确是问题很大,左右还能滚动了,上下也能滚动,但木有更好的办法啊,下次我的项目实现就直接跳转到新页面提交数据就好了,省了很多事

4

嗯嗯,还是尽量避免在弹层中放表单逻辑