2011-11-02 93 views
1
<p>I like turtles</p> 
<h3>Child brags about stuff</h3> 
<h4>The Herd</h4> 

如何更改标签的位置(顺序)?更改DOM中标签的位置

要这样:

<h3>Child brags about stuff</h3> 
<p>I like turtles</p> 
<h4>The Herd</h4> 

是否有一个jQuery可能性?

回答

4

使用.detach().insertAfter() jQuery方法,就像这样:

$(function() { 
    $('p').detach().insertAfter('h3'); 
}); 

jsFiddle证明。

1

如果你有在变量h3elemh3pelemp(让他们那里不过你想要的 - jQuery的,getElementByIdgetElementsByTagName,或任何真的),用途:

h3elem.parentNode.insertBefore(h3elem, pelem); 

这使h3p之前。

1
function doWorks(){ 

    var h3 = $("h3"); 

    h3.remove(); 

    h3.insertBefore("p"); 


} 
+0

为什么不在第二行使用h3变量? – GregL

2

使用jQuery:

$('h3').after($('p')); 

也看到我的jsfiddle

+0

我忘了'.after()'如果元素已经在DOM中,它就会移动元素。很好,很简洁。 – GregL

1

以下的代码插入<h3>标签之前<p>标签,你可以将它们分配一个ID来唯一识别它们。

$('h3').insertBefore($('p'));