3

是否可以模拟内容可编辑 div 上的箭头键?我试图触发“按键”事件,但似乎 contenteditable 忽略了它们。(我只需要一个 webkit/safari 解决方案)

我只需要像箭头键一样在 div 内移动插入符号,但是以编程方式。

也许 Tim Down 的 Rangy 库可以提供帮助?

谢谢!

4

1 回答 1

2

这很棘手,因为通常不可能完全模拟关键事件。具体来说,在大多数浏览器中,在没有发生实际击键的情况下,不可能触发键事件的默认浏览器操作。

在这种情况下,您必须手动完成,这很复杂。箭头键作用于页面上的可见文本,这意味着您需要考虑折叠空格、隐含的换行符<br>和块元素、通过 CSSdisplay属性隐藏的元素以及许多其他细微之处。此外,模拟向上和向下箭头键依赖于获取页面上任意字符的精确像素坐标,这在大多数浏览器中并非易事。

我正在研究一种在 Rangy 页面上浏览可见文本的方法,这将有助于模拟左右箭头键,但 Rangy 无法使用向上和向下箭头键。

于 2012-04-09T23:47:15.270 回答