我使用contenteditable
属性作为 Inputfield 的跨度和 ussual 它工作正常,但现在我有问题,如果我在 Firefox 93 中选择超过 1 行,并尝试将它们替换为另一个文本,它不工作,在 Chrome / Safari 甚至 Firefox 92 它工作正常。
它可能是一个错误,或者我使用它错了?
var spanContent = `Lorem ipsum dolor sit amet, consetetur sadipscing elitr,
sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua.
At vero eos et accusam et justo duo dolores et ea re. Stet a kasd gubergren,
no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet,
consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua.
At vero eos et accusam et justo duo dolores et ea re. Stet a kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.`;
window.addEventListener('load', function () {
var span = document.getElementById('myEditable');
span.innerText = spanContent;
var range = new Range();
range.setStart(span, 2);
range.setEnd(span, 5);
document.getSelection().addRange(range);
});
<span contenteditable="true" id="myEditable"></span>
我可以在 Firefox 94.0.1 上重现此行为,并且它在我们的应用程序中导致问题。看起来像 Firefox 中的回归错误。我已经在 bugzilla 上提交了一个错误,希望他们发现它相关:
https://bugzilla.mozilla.org/show_bug.cgi?id=1740492我已经使用了一个更简单的版本的代码片段(在 Firefox 上浏览 SO 以重现错误):
<html>
<span contenteditable="true">
Lorem ipsum dolor sit amet, consetetur sadipscing elitr,
sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. <br>
At vero eos et accusam et justo duo dolores et ea re.<br>
Stet a kasd gubergren,
no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet,
consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua.<br>
At vero eos et accusam et justo duo dolores et ea re.<br>
Stet a kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet
</span>
</html>
本站系公益性非盈利分享网址,本文来自用户投稿,不代表边看边学立场,如若转载,请注明出处
评论列表(11条)