主要在 Firefox 中,尽管它偶尔也会在其他浏览器中中断。如果您检查下面的 jsfiddle,尤其是如果您转到最后一个标签并尝试将它们全部删除,则不能。有时你可以。这是不一致的。
<div id="testDiv" contentEditable="true">
Hey <input id="user-tag-1" class="ut ut-full-name" carpos="9" type="button" tabindex="-1" value="Rob"/>
</div>
我已经在 Mozilla 的董事会和这里看到过这个讨论,解决方法通常是将非 contenteditable html 包装在 contenteditable <span>
, <p>
, 中<span>
。我所看到的任何东西都没有真正解决我的问题。至少不完全。即使我可以删除 html,也会有很多奇怪的行为。
任何人都知道为什么 contenteditable div 会发生这种情况,如果这只是非 contenteditable html 发生的事情,是否有解决这些问题的解决方案,或者我是否必须为退格键和删除键编写逻辑以检查和删除标签?