08-27-周三_17-09-29
This commit is contained in:
77
node_modules/domutils/lib/manipulation.js
generated
vendored
Normal file
77
node_modules/domutils/lib/manipulation.js
generated
vendored
Normal file
@@ -0,0 +1,77 @@
|
||||
exports.removeElement = function(elem){
|
||||
if(elem.prev) elem.prev.next = elem.next;
|
||||
if(elem.next) elem.next.prev = elem.prev;
|
||||
|
||||
if(elem.parent){
|
||||
var childs = elem.parent.children;
|
||||
childs.splice(childs.lastIndexOf(elem), 1);
|
||||
}
|
||||
};
|
||||
|
||||
exports.replaceElement = function(elem, replacement){
|
||||
var prev = replacement.prev = elem.prev;
|
||||
if(prev){
|
||||
prev.next = replacement;
|
||||
}
|
||||
|
||||
var next = replacement.next = elem.next;
|
||||
if(next){
|
||||
next.prev = replacement;
|
||||
}
|
||||
|
||||
var parent = replacement.parent = elem.parent;
|
||||
if(parent){
|
||||
var childs = parent.children;
|
||||
childs[childs.lastIndexOf(elem)] = replacement;
|
||||
}
|
||||
};
|
||||
|
||||
exports.appendChild = function(elem, child){
|
||||
child.parent = elem;
|
||||
|
||||
if(elem.children.push(child) !== 1){
|
||||
var sibling = elem.children[elem.children.length - 2];
|
||||
sibling.next = child;
|
||||
child.prev = sibling;
|
||||
child.next = null;
|
||||
}
|
||||
};
|
||||
|
||||
exports.append = function(elem, next){
|
||||
var parent = elem.parent,
|
||||
currNext = elem.next;
|
||||
|
||||
next.next = currNext;
|
||||
next.prev = elem;
|
||||
elem.next = next;
|
||||
next.parent = parent;
|
||||
|
||||
if(currNext){
|
||||
currNext.prev = next;
|
||||
if(parent){
|
||||
var childs = parent.children;
|
||||
childs.splice(childs.lastIndexOf(currNext), 0, next);
|
||||
}
|
||||
} else if(parent){
|
||||
parent.children.push(next);
|
||||
}
|
||||
};
|
||||
|
||||
exports.prepend = function(elem, prev){
|
||||
var parent = elem.parent;
|
||||
if(parent){
|
||||
var childs = parent.children;
|
||||
childs.splice(childs.lastIndexOf(elem), 0, prev);
|
||||
}
|
||||
|
||||
if(elem.prev){
|
||||
elem.prev.next = prev;
|
||||
}
|
||||
|
||||
prev.parent = parent;
|
||||
prev.prev = elem.prev;
|
||||
prev.next = elem;
|
||||
elem.prev = prev;
|
||||
};
|
||||
|
||||
|
Reference in New Issue
Block a user