1 exports.removeElement = function(elem){
2 if(elem.prev) elem.prev.next = elem.next;
3 if(elem.next) elem.next.prev = elem.prev;
6 var childs = elem.parent.children;
7 childs.splice(childs.lastIndexOf(elem), 1);
11 exports.replaceElement = function(elem, replacement){
12 var prev = replacement.prev = elem.prev;
14 prev.next = replacement;
17 var next = replacement.next = elem.next;
19 next.prev = replacement;
22 var parent = replacement.parent = elem.parent;
24 var childs = parent.children;
25 childs[childs.lastIndexOf(elem)] = replacement;
29 exports.appendChild = function(elem, child){
32 if(elem.children.push(child) !== 1){
33 var sibling = elem.children[elem.children.length - 2];
40 exports.append = function(elem, next){
41 var parent = elem.parent,
52 var childs = parent.children;
53 childs.splice(childs.lastIndexOf(currNext), 0, next);
56 parent.children.push(next);
60 exports.prepend = function(elem, prev){
61 var parent = elem.parent;
63 var childs = parent.children;
64 childs.splice(childs.lastIndexOf(elem), 0, prev);
68 elem.prev.next = prev;
72 prev.prev = elem.prev;