Javascript 外部订购部

Javascript 外部订购部,javascript,jquery,html,Javascript,Jquery,Html,我有一个带有特定顺序的html页面,例如: <div id="three"></div> <div id="two"></div> <div id="one"></div> 但是我需要订购它,我可以触摸html,所以,我们的想法是使用Javascript/Jquery来实现这一点,有没有一种方法可以在不触摸html的情况下实现这一点?使用Jquery: $('#one').parent().app

我有一个带有特定顺序的html页面,例如:

    <div id="three"></div>
    <div id="two"></div>
   <div id="one"></div>

但是我需要订购它,我可以触摸html,所以,我们的想法是使用Javascript/Jquery来实现这一点,有没有一种方法可以在不触摸html的情况下实现这一点?

使用Jquery:

$('#one').parent().append($('#three')).append($('#one')).append('#two');
这样你就有了,按顺序排列的第3、1、2部分。
您正在选择一个div,并选择它的父级。然后按照您想要的顺序附加它们

如果要使用纯javascript:

var parent = document.getElementById('one').parentNode;
parent.appendChild(document.getElementById('three'));
parent.appendChild(document.getElementById('one'));
parent.appendChild(document.getElementById('two'));
现在,假设你有很多div,我将假设#一到十:
您可以创建一个数组,并根据需要对ID进行排序,例如:

var order = ['ten', 'eight', 'six', 'four', 'two', 'nine', 'seven', 'five', 'three', 'one'];
for(var i = 0; i < order.length; i++){
    parent.appendChild(document.getElementById(order[i]));
}
var顺序=['10','8','6','4','2','9','7','5','3','1'];
对于(变量i=0;i

这就是你要找的吗?

是的。。。请尝试使用以下代码:

$('#two').appendTo($('#one').parent())
$('#three').appendTo($('#two').parent())

对于简单答案,请使用。之前:

$('#three').before('#two');
$('#two').before('#one');

这应该会有帮助:你的意思是,你需要对
元素重新排序,使它们按“一、二、三”的顺序排列?@JordanGray没错,我错过了问题中的这一部分,但是的,我需要按一、二、三的顺序排列。这样,你就可以把它们彼此放在一起,这样就可以得到有效的答案,但在我的例子中,我还有一些div,例如:三个两个一个测试,所有测试都是在asp中创建的,在html中解析,asp有时发送无序的项目,所以我不知道它们的确切位置,如果我使用parent()设置位置,有时它将不在正确的位置,所以,你想要一个简单的方法来订购它们吗?不,parent指的是那些div的容器。可以是另一个div,也可以是主体,例如,请注意,这里需要一个额外的右括号:
parent.appendChild(document.getElementById(order[i]);