相关疑难解决方法(0)

execCommand() 现在已过时,有什么替代方法?

我打算使用Document.execCommand()方法和contenteditable属性来构建我的自定义 WYSIWYG 编辑器。但是当我查看 的文档Document.execCommand(),我发现它现在已经过时了。它的现代(或现存)替代品是什么?

html javascript css execcommand

83
推荐指数
7
解决办法
3万
查看次数

有没有比document.execCommand更好的东西?

在实现基于Web的富文本编辑器时,我读到这document.execCommand对于对HTML文档执行操作很有用(比如选择粗体).但是,我需要一些更好的东西.具体来说,我需要确切地知道在innerHTML中添加或删除了哪些文本,以及在什么位置(作为整个文档的HTML表示的偏移量).

我考虑过使用内置的document.execCommand和DOM4的变异观察器,但execCommand似乎没有完成任务:

  • 我没有看到一种"不加粗体"选择的方法
  • 生成的html似乎因浏览器而异.(我希望<span>标签不是<b>,但一致性更重要)
  • 并且没有关于它如何处理冗余嵌套/相邻<span>标签的信息.

此外,根据我的需要,使用变异观察器似乎有点矫枉过正.

我的动机:我正在尝试定期向服务器传输文档更改,而无需重新传输整个文档.我将数据作为HTML表示的插入和删除集合发送.如果有人知道如何从CKEditor中获取此功能(所以我不必从头开始),那么我会永远爱你.

注意:执行文本差异不是一种选择,因为它在非常大的文档上表现不佳.

否则,我并不是害怕尝试写一些这样做的东西.DOM的范围对象提供的方法将处理很多繁重的工作.我也很欣赏有关这种可能性的建议.

javascript dom richtext ckeditor execcommand

12
推荐指数
2
解决办法
2743
查看次数

标签 统计

execcommand ×2

javascript ×2

ckeditor ×1

css ×1

dom ×1

html ×1

richtext ×1