Samsung Internet 中 enterkeyhint 可用,但仅限 Android 平台且需版本 18.0+(WebView 115+);iOS 版实为 Safari 封装,不支持该属性。

enterkeyhint 在 Samsung Internet 中是否可用
可用,但仅限 Android 平台且需 Samsung Internet 18.0+(对应 Android WebView 115+),iOS 版 Samsung Internet 不存在(它本质是 Safari 封装,不支持该属性)。
常见失效场景与验证方式
即使版本达标,enterkeyhint 也可能“看起来没反应”——这不是 bug,而是受系统级限制影响:
- Android 系统需启用「显示虚拟键盘按键标签」(部分厂商定制系统默认关闭,如三星 One UI 的「键盘设置 → 显示操作键文字」需手动开启)
- 输入法必须支持该标准:Gboard 14.0+、Samsung Keyboard 12.0+ 可识别;第三方输入法(如 SwiftKey、搜狗)多数忽略
enterkeyhint - 仅对
<input type="text">、<input type="search">、<textarea>生效;type="number"或type="email"等类型被系统强制覆盖为「完成」或「下一个」 - 用
console.dir(inputElement)检查元素属性,确认enterKeyHint属性已写入 DOM,但实际渲染取决于底层输入法响应
实操建议:最小可行验证代码
别依赖视觉反馈,先跑通基础链路:
<input type="search" enterkeyhint="search" placeholder="试试点这里,再看键盘右下角键" autocomplete="off" >
注意:autocomplete="off" 能避免某些输入法劫持行为干扰测试;在 Samsung Internet 中打开此页面后,务必使用系统默认 Samsung Keyboard(设置 → 语言与输入 → 默认键盘 → Samsung Keyboard)。
兼容性兜底策略
不能假设用户一定看到「搜索」键——很多场景下它仍显示为「↵」或「返回」。稳妥做法是:
- 保留
enterkeyhint作为增强提示,但不把它当作功能前提 - 所有表单提交逻辑仍需监听
input.addEventListener('keydown', e => { if (e.key === 'Enter') {...} }) - 对搜索类场景,额外提供显式「搜索」按钮,避免纯键盘操作路径断裂
- 若需强提示,可配合
aria-label="按搜索键提交"提升无障碍体验
真正容易被忽略的是:Samsung Internet 的 WebView 内核更新滞后于 Chrome,即使设备系统是 Android 14,其内置 WebView 版本可能仍是 113,此时 enterkeyhint 完全不解析——得靠 navigator.userAgent 中的 WebView/115. 字符串确认,而不是查 Android 版本号。

















