0

我得到了这个 html

<div contenteditable="true"> Hey <a class="tgt" contenteditable="false">harry</a> great </div>

firefox我无法删除a.tgt使用时backspace时。在除 Firefox 之外的所有其他浏览器中被删除

有什么问题?

4

2 回答 2

2

这可能对某些人有帮助。我遇到了同样的问题。

而不是这个: <div contenteditable="true"> Hey <a class="tgt" contenteditable="false">harry</a> great </div>

你可以有这个: <div contenteditable="true"> Hey <a class="tgt" contenteditable="false">harry</a><span class="remove"></span> great </div>

您可以使用 javascript(在这种情况下使用 jquery)来检测 .remove 的删除并同时删除您不可编辑的 div:

// you can wrap this in an if statement and only execute in firefox
$('.remove').on("DOMNodeRemoved", function() { 
    $(this).prev(".tgt").remove();
});

希望这可以帮助!

于 2013-10-10T15:15:34.277 回答
-1

尝试使用属性contenteditable=true<a>将html 包装到span标记中

<div contenteditable="true"> Hey <a class="tgt" contenteditable="false"> <span contentEditable="true">harry</span></a> great</div>
于 2013-04-20T22:07:51.427 回答