2012-10-04 172 views
0

我想重新排列我的div的順序。刪除div並追加另一個div

這是我的結構在這裏:

<div class="span8 inner-left" style="clear:both;"> 
    <div class="span3" style="text-align:right;"></div> 
    </div> 
    <div id="moreread" class="span4 inner-left"></div> 

這是我想什麼我的結果是:

<div class="span8 inner-left" style="clear:both;"> 
    <div class="span3" style="text-align:right;"></div> 
    <div id="moreread" class="span4 inner-left"></div> 
    </div> 

這不起作用:

$(this).find('#moreread').after(".span3"); 
+2

可能與http://stackoverflow.com/questions/1279957/how-to-move-an複製-element-into-another-element – Felix

+0

http://stackoverflow.com/questions/4793604/how-to-do-insert-after-in-javascript-without-using-a-library –

回答

5

您可以使用appendTo方法:

$('#moreread').appendTo('.span8'); 

請注意您的標記無效,您應該關閉您的div標記。

+0

oops,可以工作,但它增加了它befo re'.span3'我需要在 – user992731

+1

@ user992731之後添加它確定嗎? http://jsfiddle.net/HKjB4/ – undefined

2

你想要麼.insertAfter('.span3'),或.appendTo('.span8')

前者將始終把它直接.span3之後,而後者總是會讓它的.span8最後一個孩子 - 在這種情況下,兩個等價。

1

HTML:

<div class="span8 inner-left" style="clear:both;"> 
    A 
    <div class="span3" style="text-align:right;">B</div> 
</div> 
<div id="moreread" class="span4 inner-left">C</div> 

的jQuery:

$('#moreread').insertAfter('.span3'); 

小提琴:http://jsfiddle.net/gromer/WD976/1/