ContentEditable 元素对热键没有反应

2023-12-07

我正在开发一个 Chrome 扩展,它将 JS 代码注入所有打开的选项卡中。该代码的任务包括显示一个文本框,实现为contentEditable <div>以允许格式化。但是,那contentEditableelement 与某些网站不能很好地配合,例如推特。

自己尝试一下:

  1. Go to 推特.com
  2. Paste javascript:document.body.setAttribute('contentEditable', true);在地址栏中输入并按 Enter 键。
  3. 单击文档中的任意位置 - 您现在应该能够编辑文本。
  4. 尝试输入一个j or k。您将看到:该字符没有出现,而是移动了选择(列表中的一条推文将突出显示)。

我努力寻找 Twitter 的键盘导航是如何实现的,但找不到任何提示。您能给我一些关于如何解决此问题(并避免在其他网站上出现类似问题)的提示吗?

使用 iFrame 作为输入会触发一些其他非常奇怪的错误,因此我想尽可能避免这种情况。


请确保您没有在 google chrome 上安装 vim 键盘扩展。 J 和 K 用于导航快捷方式。 (上/下)。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ContentEditable 元素对热键没有反应 的相关文章