getSelection & surroundContents über mehrere Tags hinweg

Ich habe ein Skript, das die Hintergrundfarbe des ausgewählten Texts ändert. Es tritt jedoch ein Problem auf, wenn der Text über mehrere Elemente / Tags hinweg ausgewählt wird.

Der Code, den ich habe, ist:

var text = window.getSelection().getRangeAt(0);
var colour = document.createElement("hlight");
colour.style.backgroundColor = "Yellow";
text.surroundContents(colour);

Und der ausgegebene Fehler ist:

Error: The boundary-points of a range does not meet specific requirements. =
NS_ERROR_DOM_RANGE_BAD_BOUNDARYPOINTS_ERR
Line: 7

Ich glaube, dies hat mit der Funktion getRange () zu tun, obwohl ich mir nicht sicher bin, wie ich vorgehen soll, da ich ein Anfänger in Javascript bin.

Gibt es eine andere Möglichkeit, das zu replizieren, was ich erreichen möchte?

Danke vielmals

Antworten auf die Frage(2)

Ihre Antwort auf die Frage