簡體   English   中英

jQuery獲取所有后代節點,包括文本節點

[英]jQuery get all descendant nodes including text nodes

jQuery中是否有一種方法可以遞歸獲取父節點的所有后代節點,包括文本節點? 我知道$.contents()方法,但是正如jQuery文檔所述:

.contents()方法允許我們在DOM樹中搜索這些元素的直接子代

我的問題是,我有一個包含更多(非文本)節點的子節點,我需要的不僅僅是父節點。 我現在正在嘗試一些解決方法:

var contents = container.contents();
var foo = $('.foo');
var index = contents.index(foo);
contents.splice(index,1,$('.foo').contents());

...但是這會插入數組而不是單個元素。 我的最后一步是將元素逐個推到contents數組中,但是我想知道是否有更好的方法可以做到這一點。

我不太了解您要做什么,但是為了獲取某個元素的所有后代節點 ,可以使用以下命令:

var nodes = $('*', container).addBack().contents();

演示: http : //jsfiddle.net/5vfBg/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM