我一直在研究创建一个富文本编辑器,起初我打算使用 contentEditable,但事实证明结果非常不一致,输出的 HTML 经常被破坏。
我想知道是否有使用 contentEditable 的替代方法,例如 Google Docs 的方式(他们在那里创建了自己的引擎)。
最佳答案
甚至 Google 文档也是基于 contentEditable 构建的。然而,他们使用它的方式与大多数编辑不同。
当您聚焦文档区域时,它看起来就像是因为假插入符而聚焦。实际焦点转到 <iframe>
设置键盘事件监听器。引擎 (kix) 然后根据您按下的键修改文档区域。
这太棒了,因为实际上没有严重的跨浏览器不一致,因为浏览器不是修改 DOM 的浏览器。
我能想到的唯一选择可能是简单的文本输入而不是 contentEditable 元素,但是当您可以利用 contentEditable 时,为什么还要为最大长度等问题烦恼;-)
关于javascript - 内容可编辑替代,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9250272/