Keyboard Layout API、区域设置与隐私
使用键盘布局映射提供可访问的快捷键标签,同时避免把布局当作按键、设备或身份信号。
BotBrowser Team
WICG Keyboard Map 规范与浏览器安全上下文规则共同限定了可暴露的布局信息。BotBrowser 可以在受控配置中复核这类界面,但不会记录按键,也不保证每个主机都提供布局映射。明确这条边界,才能把有用的标签与身份信号分开。
摘要
Keyboard Layout API 可以根据当前布局显示更容易理解的快捷键标签。它是展示辅助,不是按键记录器,也不能证明国籍或身份。只在明确的界面任务中请求布局映射,并保留可用的回退方案。
内容导航
布局映射的用途
navigator.keyboard.getLayoutMap() 将物理按键代码映射到当前布局通常产生的字符。快捷键帮助可以据此显示用户键盘上的标签。映射不包含按键历史,读取它也不会获得输入文本。
布局可能临时切换,也可能在共享设备上使用。不要把布局结果保存为用户画像字段,也不要据此推断身份。
权限、策略与隐私边界
可用性取决于浏览器、安全上下文以及权限或策略决定。请求失败只表示当前上下文无法提供这项展示,不表示设备可疑。若只为本地界面服务,就在浏览器内处理,不必上传布局映射。
布局映射也不替代谨慎的键盘事件处理。不要收集输入文本,同时提供鼠标或触摸操作。诊断信息应保持最小,并说明用途。
可访问标签与回退
保留稳定的命令名称和非键盘操作。映射成功时加入本地化标签;屏幕阅读器文本应包含命令和修饰键。映射不可用时使用文档化的默认标签或可编辑设置。
测试长文本、从右到左语言以及任务中的布局切换。权限提示出现时,控件仍应可操作。
可测试的决策规则
- 先显示稳定的命令名和替代操作。
- 在安全上下文中,仅在打开快捷键帮助时请求映射。
- 成功后显示标签,但不要把映射存为身份信息。
- 失败时保留回退,并只记录产品调试所需的结果。
验收结果很具体:无论映射是否可用,用户都能找到并执行“撤销”;测试不需要记录按键或推断国籍。
结论
布局映射能让不同语言和键盘上的命令更清楚,但它仍只是受限的展示输入。BotBrowser 可以在兼容系统的受控配置中复核这类界面;它不会记录按键,也不保证每个主机都提供布局映射。
请阅读 Keyboard Map 规范、MDN Keyboard API、跨平台配置指南、Intl 区域格式指南以及 时区与语言指南。