javascript - 在 IE 中使用 contentEditable 的风险

标签 javascript html internet-explorer contenteditable

我们必须为我们的产品添加一个基本的 HTML 编辑器。由于我们目前只支持 IE(大多数客户仍在使用 IE 6),我被告知要使用 Internet Explorer 内置的 XHTML 编辑功能——例如<div contentEditable="true">如“Editing a Web Page”中所述。

除了不能在其他浏览器中工作。 (管理层认为这不是问题。我们的客户会忍受我们的软件只能在 IE 上运行。我们的软件只能在 IE 上运行,我们从来没有亏过钱;大多数客户目前只会让他们的员工使用 IE6 )

contentEditable 可能会遇到哪些其他问题?


更新

我用“contentEditable”编写的 HTML 编辑器被证明很难可靠,有很多 problems .如果我必须再次这样做,我会非常努力使用众多开源解决方案之一(例如 TinyMCE)或购买受支持的 HTML 编辑器。

毫无疑问,如果有足够的时间,一个非常熟练的 jscript 程序员可以让“contentEditable”工作得很好。只是网络上的所有示例看起来都很简单,直到您测试常见操作,例如从 word 中进行剪切/粘贴并尝试编辑生成的 HTML。 (只是客户会做的事情)

(只需在 stackoverflow 上搜索“contentEditable”即可了解其他人遇到的问题)

最佳答案

contentEditable 属性适用于 Safari、Firefox 3 和 Opera 9。

由于操作无疑是通过选择进行的,因此您最大的问题将是让选择/范围跨浏览器工作(see here)

还有很多little bugs跨浏览器可能会或可能不会咬你。其中包括不兼容的区分大小写、不兼容的再次关闭方法(removeAttribute 与设置为 false)。

尽管存在这些缺陷,但我发现它工作得相当好。

关于javascript - 在 IE 中使用 contentEditable 的风险,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/491790/

相关文章:

javascript - 在 WordPress 响应式工具提示上调用 Javascript

javascript - 如何仅使用 JavaScript 将属性数据转换为小写?

函数预期的 JavaScript 错误对象

javascript - 如何在javascript中显示image/pdf的二进制内容?

javascript - Web组件的自定义方法

html - 以正确的顺序垂直定位 html 元素

html - Chrome (windows) 不隐藏滚动条

html - 在knockout js中查找foreach data-bind的最后一次迭代

html - 单选按钮在 Internet Explorer 中不起作用/不可选择

javascript - 在 IE 浏览器中,状态栏显示 JavaScript 错误