如何使 HTML <div> 元素可跨浏览器编辑?

IT技术 javascript html cross-browser contenteditable
2021-03-21 13:59:26

您知道如何<div>使用 JavaScript进行编辑吗?我正在寻找跨浏览器的解决方案。

类似于富文本区域的东西,但使用可编辑的<iframe>. 我需要类似的东西<div>
我不想使用替换文本框。

4个回答

我发现了如何。

您使用 DOMElement 的 contentEditable 属性,就像这样

<div onClick="this.contentEditable='true';">
    lorem ipsum dolor lorem ipsum dolorlorem ipsum dolor
</div>
它实际上是 HTMLElement 的属性。请参阅:developer.mozilla.org/en-US/docs/Web/API/HTMLElement/...
2021-04-28 13:59:26
为什么不直接设置属性contenteditable=true,而不设置onClick或者,当回答这个问题时,IE 是否不支持?
2021-04-29 13:59:26
是的,我的朋友,它确实可以在 Internet Explorer 6 中运行!以下是有关此主题的更多信息以及在旧版 Internet Explorer 中使用它的风险。 stackoverflow.com/questions/491790/... 谢谢。
2021-05-06 13:59:26

您可以在纯 HTML 中执行此操作

<div class="editable" contenteditable="true">
    Editable text...
</div>

希望这可以帮助!

@Gothdo 实际上这是这样做的方法,不需要 JS。使用接受的答案,您必须在 div 上单击两次才能第一次对其进行编辑。此处 div 显示为普通 div,直到您单击它可编辑为止。
2021-05-01 13:59:26
OP 想用 JavaScript 做到这一点。
2021-05-06 13:59:26

contentEditable元素的属性设置"true"

element.contentEditable = "true";

也可以看看:

How about his: 

制作一个隐藏的 "textArea" ,并在选择(单击或悬停) div 后,隐藏 Div 并显示 textArea 。

这正是我不想做的。谢谢。
2021-04-25 13:59:26