沒有庫:
function reverseChildNodes(node) {
var parentNode = node.parentNode, nextSibling = node.nextSibling,
frag = node.ownerDocument.createDocumentFragment();
parentNode.removeChild(node);
while(node.lastChild)
frag.appendChild(node.lastChild);
node.appendChild(frag);
parentNode.insertBefore(node, nextSibling);
return node;
}
reverseChildNodes(document.getElementById('con'));
jQuery的風格:
$.fn.reverseChildNodes = (function() {
function reverseChildNodes(node) {
var parentNode = node.parentNode, nextSibling = node.nextSibling,
frag = node.ownerDocument.createDocumentFragment();
parentNode.removeChild(node);
while(node.lastChild)
frag.appendChild(node.lastChild);
node.appendChild(frag);
parentNode.insertBefore(node, nextSibling);
return node;
};
return function() {
this.each(function() {
reverseChildNodes(this);
});
return this;
};
})();
$('#con').reverseChildNodes();
jsPerf Test
_「所以,當添加一個div就會去到列表的末尾....」 _ - 是你的問題如何扭轉現有元素(下面的一些很好的答案),或者如何在特定地點添加新元素?從你想要的輸出開始,如果你添加了一個新的'