我使用jQuery.append()來動態添加一些元素。有沒有什麼辦法來獲得這些新插入的元素的jQuery集合或數組?jQuery append() - 返回附加元素
所以我想這樣做:
$("#myDiv").append(newHtml);
var newElementsAppended = // answer to the question I'm asking
newElementsAppended.effects("highlight", {}, 2000);
我使用jQuery.append()來動態添加一些元素。有沒有什麼辦法來獲得這些新插入的元素的jQuery集合或數組?jQuery append() - 返回附加元素
所以我想這樣做:
$("#myDiv").append(newHtml);
var newElementsAppended = // answer to the question I'm asking
newElementsAppended.effects("highlight", {}, 2000);
有做這個簡單的方法:
$(newHtml).appendTo('#myDiv').effects(...);
這首先與jQuery(html [, ownerDocument ])
創建newHtml
,然後使用appendTo(target)
各地輪流東西(注「To
」位)將其添加到#mydiv
的末尾。
因爲你現在與$(newHtml)
開始的appendTo('#myDiv')
的最終結果是HTML的新位,而.effects(...)
通話將上新一些HTML太多。
我想我實際上使用'appendTo'和'prependTo'遠遠超過我使用'append'和'prepend'。 – 2010-01-29 01:53:18
使用jQuery UI版本1.9.2我得到'效果'不是一個函數......但'效果'是 – 2013-03-01 08:57:17
工程真棒動態添加元素通過AJAX和附加.data()他們:D – 2014-06-21 17:46:53
var newElementsAppended = $(newHtml).appendTo("#myDiv");
newElementsAppended.effects("highlight", {}, 2000);
// wrap it in jQuery, now it's a collection
var $elements = $(someHTML);
// append to the DOM
$("#myDiv").append($elements);
// do stuff, using the initial reference
$elements.effects("highlight", {}, 2000);
當我以後嘗試將事件綁定到附加元素時,這並不適用於我。我用var appendTarget = $(newHtml).appendTo(element)。我可以用$(attachedTarget).bind('keydown',someFunc)來綁定 – 2012-06-22 19:12:55
我認爲它是'$ elements.effect(「highlight」,{},2000);',而不是'effects'。 – why 2013-03-27 12:44:03
這不起作用,因爲追加後的$ elements變量發生變化並且不再可用。 – 2014-01-07 20:26:55
小提醒,當元件被動態添加,函數等append()
,appendTo()
,prepend()
或prependTo()
返回一個jQuery對象,而不是HTML DOM元素。
var container=$("div.container").get(0),
htmlA="<div class=children>A</div>",
htmlB="<div class=children>B</div>";
// jQuery object
alert($(container).append(htmlA)); // outputs "[object Object]"
// HTML DOM element
alert($(container).append(htmlB).get(0)); // outputs "[object HTMLDivElement]"
append()中的返回元素是容器而不是新元素。 – Tomas 2014-09-22 13:45:19
我想你可以做這樣的事情:
var $child = $("#parentId").append("<div></div>").children("div:last-child");
父#parentId從追加回來,所以加一個jQuery兒童查詢它來獲取最後div插入的孩子。
$ child是添加的jquery包裝的子div。
[更簡單的方法從附加元素獲取jQuery對象](http://stackoverflow.com/questions/1443233/easier-way-to-get-a-jquery-object-from-appended-element ) – bluish 2013-06-10 13:03:36