如何更改html元素的顺序

时间:2012-12-09 17:59:00

标签: javascript jquery html

例如我有一个像这样的li列表:

<li id='r1' class='myclass'>something</li>
<li id='r2' class='myclass'>something</li>
<li id='r3' class='myclass'>something</li>
<li id='r4' class='myclass'>something</li>
<li id='r5' class='myclass'>something</li>

我想用一个函数来互相替换两个li。

例如:首先输入li2 o并将li1放在第二位。

我有这样的功能:

function updown(li_id , dir)
{
 //what should i type here....
}

li_id:是我的傻瓜

dir:是“向上”还是“向下”

1 个答案:

答案 0 :(得分:2)

使用before()或after()来交换两个元素的顺序:

$('#r1').before($('#r2'));​

FIDDLE

或您的职能:

function updown(li_id , dir) {
    $('#'+li_id)[dir!='up'?'before':'after']($('#'+li_id)[dir!='up'?'next':'prev']());
}

使用像:

updown('r3', 'up');
updown('r1', 'down');

FIDDLE