在 jQuery 中,我們通常使用選擇器來選取 HTML 元素。但是,并不是所有的需要選取的內容都是 HTML 元素,例如文本節點、屬性節點、注釋等。那么該如何選取這些非標簽內容呢?下面是幾種常見的選取非標簽內容的方法:
// 選取所有文本節點 var textNodes = $("*").contents().filter(function () { return this.nodeType === 3; }); // 選取所有屬性節點 var attribNodes = $("*").contents().filter(function () { return this.nodeType === 2; }); // 選取某個元素的注釋節點 var commentNodes = $("#myDiv").contents().filter(function () { return this.nodeType === 8; });
通過 contents() 方法可以獲取一個元素的所有子節點,包括文本節點、注釋節點、屬性節點等。然后,我們使用 filter() 方法對這些子節點進行過濾,只選擇符合條件的節點。
除了上述方法,還可以使用 parentsUntil() 方法選取某個元素的所有父元素,其中包括文本節點、注釋節點等。該方法的使用方式如下:
// 選取某個元素的所有父元素 var allParents = $("#myDiv").parentsUntil("body");
以上就是幾種常見的選取非標簽內容的方法,希望能對你有所幫助。