2011-11-30 74 views
3

我想讓ID =「a」元素div成爲div.b元素中的第一個div。如何把這個元素放在第一個使用jQuery的地方

下面是代碼:

<div class='b'> 
    <div>a</div> 
    <div>a</div> 
    <div id="a">I want to put this div to be the first div</div> 
</div> 
+0

你想通過jQuery的插入在頁面加載後這個div元素或頁面已經在頁面加載之前的HTML。 –

回答

1

我想你還需要在預先考慮之前/之前刪除#a元素,否則你將會有重複。我建議:

var aCopy = $('#a').clone(); 
$('#a').remove(); 
$('#b').prepend(aCopy); 
+1

當只有一個#b實例時,這是不必要的因爲#查找了一個應該是唯一的ID),但是如果有更多的人應該使用這種方法或最終得到重複,請參閱http://api.jquery.com/prepend/,仍然沒有必要克隆如果可以先預先安排然後再刪除,但並不總是可能的 –

+1

其實你只需要**一行代碼**,就像這個線程的其他答案一樣:'$('#b')。prepend($ ('#a'));'你不需要克隆和刪除節點。 –

+0

我同意@Konstantin。去除是沒有必要的; 'prepend'和'append'爲你處理。 – FishBasketGordo

8

使用prepend[API Ref]

$('#b').prepend($('#a')); 

或者,如果它更方便,你可以使用prependTo[API Ref]

$('#a').prependTo($('#b')); 
+0

如果我想讓它變成完全相反的方式,即我想使它最後一個div – Phoenix

+0

「append」和「appendTo」以同樣的方式工作,除了它們會將元素移動到最後一個子位置的第一。 – FishBasketGordo

+0

@ user1063434 http://api.jquery.com/append/ – Wazzzy

0

如果你想通過插入jQuery的則有一個函數前面加上其插入元素作爲第一元素。

YOu可以檢查這個link欲知更多信息。

追加只會與前置相反。

相關問題