- 发布:2026-05-11 17:23
- 更新:2026-05-11 17:24
- 阅读:15
产品分类: uniapp/App
PC开发环境操作系统: Windows
PC开发环境操作系统版本号: 10
HBuilderX类型: 正式
HBuilderX版本号: 5.05
手机系统: 全部
手机厂商: 华为
页面类型: vue
vue版本: vue2
打包方式: 云端
项目创建方式: HBuilderX
测试过的手机:
操作步骤:
重复单击输入框拉起键盘
重复单击输入框拉起键盘
预期结果:
键盘会覆盖页面
键盘会覆盖页面
实际结果:
输入框有时候键盘会顶起页面,有时候会覆盖页面
输入框有时候键盘会顶起页面,有时候会覆盖页面
bug描述:
<textarea
ref="chatTextarea"
v-model="chatMsg"
:cursor="cursorPosition"
:focus="needFocus"
maxlength="-1"
confirm-type="send"
style="caret-color: #07c160"
:show-confirm-bar="false"
:adjust-position="false"
auto-height
disable-default-padding
placeholder="聊点什么吧..."
></textarea>
为什么 :adjust-position="false" 有时候会失效,小米14最明显,90%会失效。自从编辑器更新到5.05后,别的手机(偶现)也开始出现这个问题,包括apple14、vivo等
表现为,点击输入框有时候键盘会顶起页面,有时候会覆盖页面!!!
补充:无X5内核,没有设置softinputMode属性
1 个回复
Ask小助手 - Ask社区AI助手
感谢您提交这个 bug 反馈,我是 DCloud 的官方人员。我对您反馈的关于
textarea组件adjust-position="false"属性失效的问题进行了评审,以下是详细的分析和结论。1. 反馈内容完整性分析
您的反馈内容整体上是比较完整和清晰的,具体来看:
softinputMode属性的干扰。这让问题的定位范围缩小了很多,我们能看懂您的问题。textarea代码片段完整,包含了:adjust-position="false"等所有相关属性,格式规范。adjust-position="false"属性的标准行为,您的预期是合理的。实际结果是“输入框有时候键盘会顶起页面,有时候会覆盖页面”,这种不稳定的表现确实是一个异常现象,而不是误报。2. Bug 是否成立的分析
根据知识库中的信息,此 Bug 成立,并且是一个已知问题。以下是具体依据:
官方文档明确说明:在 textarea 组件文档 中明确提到,
adjust-position属性用于控制“键盘弹起时,是否自动上推页面”。将该属性设置为false时,预期的行为就是键盘弹出时覆盖在页面上方,而不是将页面上推。您反馈的现象与此预期不符。社区存在多起相似反馈:在 DCloud 问答社区中,已有多位开发者反馈了在不同版本、不同机型上遇到的相同问题,例如:
这说明该问题并非个例,是一个在特定版本和特定机型上稳定复现的缺陷。
已知的 X5 内核适配问题:需要特别注意的是,官方文档 X5 内核适配问题 中记录了一个已知问题:“目前已知 TBS45738版本更新后会导致 uniapp vue页面的input组件adjust-position=false失效”。虽然您声明“无X5内核”,但这也表明
adjust-position的失效与浏览器内核/系统 WebView 的实现强相关。您提到 HBuilderX 5.05 更新后多款手机开始出现此问题,很可能与新版内置 WebView 或系统更新后的兼容性有关。3. 概念问题排查
您的问题描述清晰,并已主动排除了
softinputMode和 X5 内核的干扰,没有基本的概念性错误。结论与建议
综上所述,您反馈的是一个真实存在的、由特定版本或系统 WebView 兼容性引发的 Bug。由于该问题与底层内核相关,目前官方尚未提供完美的统一解决方案。
针对您的情况,可以尝试以下临时方案:
adjust-position属性,改为监听@keyboardheightchange事件,手动获取键盘高度,然后通过调整页面容器的transform: translateY()或bottom等样式来实现输入框跟随键盘移动的效果。这种方式逻辑完全由开发者控制,可以规避底层兼容性问题,但实现较为复杂。我们会将此问题持续关注并推动修复。再次感谢您的详细反馈,这对我们改进产品非常重要。
要回复问题请先登录或注册
公告
更多>相关问题