【发布时间】:2011-08-22 08:42:08
【问题描述】:
我想用它们的文本替换contenteditable 中的非img 元素。但是,我想保留任何 img 元素,包括嵌套在其他元素中的元素。换句话说:
给定输入,例如:
<div><span>Foo <strong>Bar <img src="blah.png"></strong> and more text <img src="another.png"></span> With some other text <img src="yetmore.png"></div>
我想制作:
Foo Bar <img src="blah.png"> and more text <img src="another.png"> With some other text <img src="yetmore.png">
由于这是一个contenteditable,我不想使用innerHTML 读/写,因为这会丢失光标位置等(恢复它很困难,因为你最终会得到一个不同的 DOM 树,所以您的选择节点会丢失)。
我最好的选择是遍历树并手动拆分和连接文本节点等等吗?我希望有更好的方法,或者已经可以做这样的事情的库......
【问题讨论】:
标签: javascript jquery dom contenteditable