使用微信输入法在uni-app中input和textarea有概率在ios中焦点消失
使用微信输入法在uni-app中input和textarea有概率在ios中焦点消失
类别 | 信息 |
---|---|
产品分类 | uniapp/App |
PC操作系统 | Windows |
PC系统版本 | windows 11 |
HBuilderX | 正式 |
HBuilderX版本 | 4.57 |
手机系统 | iOS |
手机系统版本 | iOS 17 |
手机厂商 | 苹果 |
手机机型 | iphone14, iphone13 |
页面类型 | vue |
vue版本 | vue3 |
打包方式 | 云端 |
项目创建方式 | HBuilderX |
操作步骤:
进入包含input,textarea的界面->点击输入框出现焦点,使用微信输入法->进行输入->拼音打入’ceshi’还未在输入法中选择对应’测试’文本时输入框上的焦点消失(小概率出现)
预期结果:
input,textarea输入时焦点不会自动消失
实际结果:
input,textarea输入时焦点经常会自动消失
bug描述:
苹果手机用户在使用 微信输入法 在input, textarea中进行输入时经常会出现焦点输入框自动消失的情况
更多关于使用微信输入法在uni-app中input和textarea有概率在ios中焦点消失的实战教程也可以访问 https://www.itying.com/category-93-b0.html
3 回复
是什么平台呢?
更多关于使用微信输入法在uni-app中input和textarea有概率在ios中焦点消失的实战教程也可以访问 https://www.itying.com/category-93-b0.html
可以试试设置 ignoreCompositionEvent 为 false
这个焦点消失问题在iOS上使用微信输入法时确实比较常见,主要是由于输入法和系统交互导致的。建议尝试以下解决方案:
- 在input/textarea组件上添加
@focus
和@blur
事件处理,手动控制焦点状态:
<input
v-model="value"
@focus="handleFocus"
@blur="handleBlur"
:focus="isFocused"
/>
const isFocused = ref(false)
const handleFocus = () => {
isFocused.value = true
}
const handleBlur = () => {
setTimeout(() => {
if(isFocused.value) {
this.$refs.input.focus()
}
}, 100)
}
- 对于textarea,可以尝试设置
confirm-type="done"
属性:
<textarea confirm-type="done"></textarea>