【发布时间】:2021-12-05 09:34:29
【问题描述】:
我使用contenteditable 属性作为跨度的输入字段,通常它工作正常,但现在我遇到了问题,如果我在 Firefox 93 中选择超过 1 行并尝试用另一个文本替换它们,它不起作用,在 Chrome/Safari 甚至 Firefox 92 中都可以正常工作。它现在似乎只适用于每一行。
可能是bug,还是我用错了?
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 rebum. Stet clita 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 rebum. Stet clita 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>
【问题讨论】: