if(!(this.document.containsNode(this)) || !insertion.isNew) {
nodeParent = insertion.ofNode.parent();
}
if(!(this.document.containsNode(this)) || !insertion.isNew) {
nodeParent = insertion.ofNode.parent();
}
+ if(!insertion.insertsNew && insertion.ofNode.isSurroundedByTextNodes()) {
+ var prev = insertion.ofNode.prev(),
+ next = insertion.ofNode.next();
+ prev.setText(prev.getText()+next.getText());
+ next.detach();
+ }
returned = implementation.call(this, insertion.ofNode);
if(!options.silent && returned.sameNode(insertion.ofNode)) {
this.triggerChangeEvent(insertion.insertsNew ? 'nodeAdded' : 'nodeMoved', {node: insertion.ofNode}, nodeParent, nodeWasContained);
returned = implementation.call(this, insertion.ofNode);
if(!options.silent && returned.sameNode(insertion.ofNode)) {
this.triggerChangeEvent(insertion.insertsNew ? 'nodeAdded' : 'nodeMoved', {node: insertion.ofNode}, nodeParent, nodeWasContained);
var newElement = this.document.createDocumentNode({tagName: parentElement.getTagName(), attrs: attrs});
parentElement.after(newElement);
var newElement = this.document.createDocumentNode({tagName: parentElement.getTagName(), attrs: attrs});
parentElement.after(newElement);