Node: nextSibling 屬性

Baseline 已廣泛支援

此特性已相當成熟,可在許多裝置和瀏覽器版本上使用。自 ⁨2015 年 7 月⁩以來,各瀏覽器均已提供此特性。

Node 介面的只讀 nextSibling 屬性返回指定節點在其父節點的 childNodes 列表中緊鄰的下一個節點,如果指定節點是父元素中的最後一個子節點,則返回 null

注意: 瀏覽器會在文件中插入 Text 節點來表示原始碼標記中的空格。因此,使用 Node.firstChildNode.previousSibling 等方法獲得的節點可能指向一個空格文字節點,而不是作者實際想要獲取的元素。

有關此行為的更多資訊,請參閱 DOM 中的空格處理 部分。

您可以使用 Element.nextElementSibling 來獲取下一個元素,忽略任何空格節點、其他元素之間的文字或註釋。

要透過子節點列表反向導航,請使用 Node.previousSibling

一個代表當前節點的下一個兄弟節點的 Node,如果沒有則為 null

示例

html
<div id="div-1">Here is div-1</div>
<div id="div-2">Here is div-2</div>
<br />
<output><em>Not calculated.</em></output>
js
let el = document.getElementById("div-1").nextSibling;
let i = 1;

let result = "Siblings of div-1:\n";

while (el) {
  result += `${i}. ${el.nodeName}\n`;
  el = el.nextSibling;
  i++;
}

const output = document.querySelector("output");
output.innerText = result;

規範

規範
DOM
# ref-for-dom-node-nextsibling①

瀏覽器相容性

另見