Safari Books Online is a digital library providing on-demand subscription access to thousands of learning resources.
| Range.insertNode( ) | Fügt am Anfang eines Bereichs einen Knoten ein |
void insertNode(Node neuerKnoten)
throws RangeException,
DOMException;neuerKnoten
Der Knoten, der in das Dokument eingefügt werden soll.
Diese Methode löst eine RangeException mit dem code INVALID_NODE_TYPE_ERR aus, wenn neuerKnoten ein Attr-, Document-, Entity- oder Notation-Knoten ist.
Außerdem löst diese Methode unter folgenden Umständen eine DOMException mit einem der folgenden code-Werte aus:
HIERARCHY_REQUEST_ERR
Der Knoten, der den Bereichsanfang enthält, gestattet entweder gar keine Kinder oder keine Kinder des angegebenen Typs, oder neuerKnoten ist ein Vorfahr dieses Knotens.
NO_MODIFICATION_ALLOWED_ERR
Der Knoten, der den Bereichsanfang enthält, oder einer seiner Vorfahren ist schreibgeschützt.
WRONG_DOCUMENT_ERR
newNode gehört zu einem anderen Dokument als der Bereich.
Diese Methode fügt den angegebenen Knoten (und alle seine Nachfahren) am Anfangspunkt dieses Bereichs in das Dokument ein. Wenn sie zurückkehrt, dann enthält dieser Bereich den neu eingefügten Knoten. Wenn neuerKnoten bereits zu dem Dokument gehört, wird er von seinem Platz entfernt und dann am Bereichsanfang neu eingefügt. Ist neuerKnoten ein DocumentFragment-Knoten, so wird nicht er selbst, sondern werden alle seine Kinder der Reihe nach am Bereichsanfang eingefügt.
Wenn der Knoten, der den Bereichsanfang enthält, ein Text-Knoten ist, wird er vor dem Einfügen in zwei benachbarte Knoten aufgespalten. Ist neuerKnoten ein Text-Knoten, so wird er nach dem Einfügen nicht mit benachbarten Text-Knoten verschmolzen. Dies können Sie mit Node.normalize() nachholen.
DocumentFragment, Node.normalize( )