解决iOS/iPadOS蓝牙小键盘无法控制网页快捷键的玄学“Bug”

2026-02-05 20:56:24 0点赞 0收藏 0评论

开局叠甲:
不会写得很规范,内容也肯定会有错误。写出来主要是为了给遇到相同问题的朋友提供一个检索参考,希望能帮大家少走弯路。


背景介绍

为了方便在 iPad 上看漫画和 看/听小说,我搞了一个六键三模的自定义小键盘,用来控制翻页和音频快进快退。因为原装亚克力外壳太重,我3D 打印了个外壳,手感上基本满足需求。

小厂DIY级别三模小键盘小厂DIY级别三模小键盘

遇到的问题

我用Docker部署了一个漫画阅读器,由于没有对应的 App,我把 Web UI 网页作为“网页 App”添加在 iPad 桌面使用。

suwayomisuwayomi

但在使用中发现:

  • 这个小键盘通过蓝牙连接时,无法控制网页自定义的快捷键。

    (例如:设置 A 为上一页,B 为下一页)

  • 但在App 内,使用左右方向键翻页却是正常的。也能正常进行媒体的快进快退

  • 如果改用 2.4G 接收器 + OTG 转接头连接 iPad,网页快捷键就能正常工作。

虽然能解决问题,但还要挂个尿袋实在太蠢了,于是我一直在找原因和解决方案。

问题原因:
在网上一通搜索+AI,基本确定是 蓝牙 HID 设备类型 的问题:

  1. 标准键盘: 当标准键盘(有线&无线)连接 iOS 设备时,点击任何输入框都不会唤出屏幕软键盘,Safari 会开放完整的按键控制权限。

  2. 自定义小键盘: 很多带“宏”功能的自定义键盘,在 iOS 系统眼中不是标准的 HID 键盘。判断方法很简单:连上蓝牙后点击任意输入框,如果依然弹出屏幕软键盘,说明系统没把它当成标准键盘。

  3. Safari 的限制: 推测 Safari 内核为了防止用户在连接“残废键盘”时无法输入文字,严格限制了此类设备的按键映射。

具体的测试可以用 iOS 设备访问一些在线键盘测试网站(比如zFrontier),按下小键盘时,看网页有没有检测到键位反馈。

zFrontierzFrontier

解决方案:

  1. 修改固件: 修改小键盘固件使其识别为标准 HID 键盘,我想大部分人应该做不到,包括我。

  2. 曲线救国: 偶然发现,只要 iOS设备同时连接上另一个标准键盘(有线或蓝牙均可),此时这个自定义小键盘即便通过蓝牙连接,也能正常控制网页快捷键了。

发现的过程也很曲折,我本想通过转换器把 2.4G 信号转成蓝牙,结果发现不兼容,但此时小键盘刚好也连着 iPad 的蓝牙。结果就在这种“双连”状态下,小键盘也能控制网页快捷键。

😂😂😂最后我的思绪一瞬间拉回到十多年前,因为这个信息我在iPadmini2的时代就知道了,只是再次遇到的时候才回想起来。

结语:写这篇文章是因为我在网上找了很久的信息,但始终没找到准确的原因&解决方案。偶然发现这种另辟蹊径的方法,于是便写下供后来者参考。我不确定信息是否准确,但问题大概率与HID设备类型相关,这甚至是Safari内核WebKit有意为之的。

作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~

展开 收起
0评论

当前文章无评论,是时候发表评论了
提示信息

取消
确认
评论举报

相关文章推荐

更多精彩文章
更多精彩文章

矛盾96

Ta还没有介绍自己

关注 打赏
最新文章 热门文章
0
扫一下,分享更方便,购买更轻松