uni-app iOS 输入框输入过程自动失焦
uni-app iOS 输入框输入过程自动失焦
示例代码:
<input
v-bind="inputProps"
class="mt-input"
:focus="isFocus"
:value="inputValue"
:password="isPassword"
:confirm-type="confirmType"
:style="inputStyle"
:placeholder-style="placeholderStyle || defaultPlaceholderStyleString"
@input="onInput"
@focus="onFocus"
@blur="onBlur"
@confirm="onConfirm"
/>
操作步骤:
切换iPhone键盘,新增“繁体粤语 - 笔画”,到输入框多次输入 “ * ”和 “。”两个键,会触发输入框的自动失焦,目前在4.45的版本,Uniapp转H5和转的App的任意输入框都能稳定复现。目前iOS 16.7.10,iOS17,iOS 18,都测试有发现。
预期结果:
期望可以有解决办法不自动失焦
实际结果:
实际多次自动失焦
bug描述:
键盘使用系统繁体笔画,在input输入框输入过程会自动失焦,目前发现输入* 和 。能稳定复现可参照附件视频输入
开发环境 | 版本号 | 项目创建方式 |
---|---|---|
Mac | M3 15.3.1 | HBuilderX |
手机系统 | 版本号 | |
iOS | iOS 18 | |
手机厂商 | ||
苹果 | ||
手机机型 | iPhone13 Pro |
更多关于uni-app iOS 输入框输入过程自动失焦的实战教程也可以访问 https://www.itying.com/category-93-b0.html
1 回复
更多关于uni-app iOS 输入框输入过程自动失焦的实战教程也可以访问 https://www.itying.com/category-93-b0.html
这个问题是iOS系统特定输入法(繁体笔画)与uni-app输入框交互时的兼容性问题。以下是关键分析:
- 问题根源:
- 主要出现在iOS繁体笔画输入法下
- 输入特定符号(*和。)时触发
- 底层是WebView与输入法的兼容性问题
- 临时解决方案:
<input
@blur="handleBlur"
:focus="keepFocus"
/>
handleBlur() {
this.keepFocus = false;
this.$nextTick(() => {
this.keepFocus = true;
});
}