使用jQuery API append()
添加新的元素:jQuery的:如何返回附加元素
$(selector).append('<div class="test"></div>')
我想表達的回報只是附加元素爲我的進一步使用,但它返回$(selector)
。那麼,如何讓jQuery返回剛添加的元素以避免重新選擇它?
使用jQuery API append()
添加新的元素:jQuery的:如何返回附加元素
$(selector).append('<div class="test"></div>')
我想表達的回報只是附加元素爲我的進一步使用,但它返回$(selector)
。那麼,如何讓jQuery返回剛添加的元素以避免重新選擇它?
我相信這樣做的方式是使用appendTo()
那麼你可以做
$('<div class="test"></div>').appendTo(selector).css('background','blue');
或任何你想做的事。
這會導致您剛添加的div
有藍色背景。
您只能存儲對其的引用。請記住,在將$div
附加到作爲DOM
的一部分的元素之前,應該先執行所有操作,以避免多次重排。
var $div = $('<div class="test"></div>');
$(selector).append($div);
您可以從append
由HTML字符串傳遞給jQuery
function獨立創建的元素:
$('<div class="test"></div>');
您可以使用無論是在append
$(selector).append(/* $div = */$('<div class="test"></div>').…);
/* $div = */$('<div class="test"></div>').appendTo(selector).… ;
或者你只是將它們分成兩個語句。
這也可以工作。
<div class="inner">hellworld</div>
$('.inner').append('<p>paragraph</p>');
這將插入兩個新的S和現有的作爲身體的最後三個子節點
var $newdiv1 = $('<div id="object1"/>'),
newdiv2 = document.createElement('div'),
existingdiv1 = document.getElementById('foo');
$('body').append($newdiv1, [newdiv2, existingdiv1]);
也許你可以試試要麼
var elt = $('<div class="test"></div>');
$(selector).append(elt);
或者使用appendTo來代替添加,然後鏈接任何你需要的(show()在下面的例子中)
$('<div class="test"></div>').appendTo($(selector)).show()
仍然不明白爲什麼選擇一個相同的解決方案downvoted ...我們並不都有很好的聯繫,有時它(錯誤地)可以被認爲是重複的因爲發佈時間,但其解釋可以幫助那些需要示例的人... – 2013-04-10 12:30:48
請試試這個
$(selector).append('<div class="test"></div>').find('div.test:last-child')
'$('
').appendTo(selector)'? – 2013-04-10 12:09:12可能重複的[jQuery append() - 返回附加元素](http://stackoverflow.com/questions/2159368/jquery-append-return-appended-elements) - 什麼發生在第一次搜索? :) – 2013-04-10 12:18:14