3 Stimmen

Wie finde ich einen Knoten in einem Bereich und entferne ihn dann?

Ich kopiere einen Bereich von der Seite und füge ihn an anderer Stelle wieder ein, aber das wird problematisch, wenn er einen Teil der Seite enthält, den ich nicht kopieren möchte. Gibt es eine gute Möglichkeit, um Knoten aus einem Bereich durch id zu entfernen? Oder wenn nicht, für den Fall, dass es zwei Knoten auf der Seite mit der gleichen id, gibt es eine Möglichkeit, eine über die andere zu identifizieren (dh über erste Angabe einer eindeutigen Eltern-ID?)

Hinweis: Bitte nur JavaScript - ich kann keine Bibliothek für diese Lösung verwenden.

4voto

Tim Down Punkte 304837

Wenn es sich um DOM-Bereiche handelt, besteht die Lösung darin, den Bereich um den auszuschließenden Knoten herum aufzuteilen, so dass Sie zwei Bereiche erhalten.

// Assuming you have a Range stored in a variable called range and
// a node you want to exclude in a variable called node
var newRange = range.cloneRange();
range.setEndBefore(node);
newRange.setStartAfter(node);

Dies wird im IE <= 8 nicht funktionieren, da dieser eine völlig andere Art der Darstellung von Bereichen hat.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X