23

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

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

使用 contentEditable 我们可能会遇到什么其他问题?


更新

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

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

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

4

6 回答 6

12

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

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

跨浏览器也有许多小错误可能会或可能不会咬你。这些包括不兼容的区分大小写、不兼容的再次关闭方法(removeAttribute 与设置为 false)。

尽管存在这些缺陷,但我发现它运作良好。

于 2009-01-30T01:17:40.643 回答
6

使用一些适用于所有主流浏览器的开源解决方案怎么样?

TinyMCE

还有其他项目,但这就是我要使用的。

于 2009-01-29T14:32:22.660 回答
6

HTML 5包含 contenteditable 属性,所以看起来它会在 IE 中很长一段时间。

刚刚收到来自 IE 团队成员的电子邮件

虽然基本上不可能以高度的信心评论未来,但可以公平地说,我不知道有任何删除 contentEditable 的计划,如果它被删除,它将破坏很多网站。

于 2009-01-29T15:30:30.750 回答
3

一个快速的谷歌搜索产生了一篇关于 contentEditable 的一些(尽管是次要的)问题的博客文章。

于 2009-01-29T15:56:53.193 回答
1

contentEditable 在 Firefox 3 下工作。我不知道 contentEditable 有任何问题。

于 2009-01-29T14:30:31.993 回答
1

如果没有对添加的 HTML 内容进行验证,我会确保检查您返回的内容,因为在 IE 中插入 XSS 攻击非常容易。

于 2009-01-29T14:33:59.290 回答