previousSibling只讀屬性在同一樹級(jí)別返回指定節(jié)點(diǎn)的前一個(gè)節(jié)點(diǎn)。
如果沒有先前的同級(jí),則此屬性返回null。
空格被視為文本,文本被視為節(jié)點(diǎn)。注釋也被視為節(jié)點(diǎn)。
為了避免previousSibling返回#text或#comment節(jié)點(diǎn)的問題,可以使用previousElementSibling僅返回元素節(jié)點(diǎn)。
使用nextSibling屬性返回同一樹級(jí)別中指定節(jié)點(diǎn)的下一個(gè)節(jié)點(diǎn)。
使用childNodes屬性可返回指定節(jié)點(diǎn)的任何子節(jié)點(diǎn)。
node.previousSibling
<div id="div-1">Here is div-1</div>
<div id="div-2">Here is div-2</div>
<script>
var x = document.querySelector("#div-2").previousSibling.nodeName;
document.getElementById("result").innerHTML = x;
</script>測試看看?/?但是,如果刪除DIV之間的空格,則返回值將不是#text:
<div id="div-1">Here is div-1</div><div id="div-2">Here is div-2</div>
<script>
var x = document.querySelector("#div-2").previousSibling.innerHTML;
document.getElementById("result").innerHTML = x;
</script>測試看看?/?所有瀏覽器完全支持previousSibling屬性:
| 屬性 | ![]() | ![]() | ![]() | ![]() | ![]() |
| previousSibling | 是 | 是 | 是 | 是 | 是 |
| 返回值: | 一個(gè)Node對象,表示節(jié)點(diǎn)的先前同級(jí);如果沒有先前同級(jí),則為null |
|---|---|
| DOM版本: | DOM級(jí)別1 |
HTML DOM參考:node.childNodes屬性
HTML DOM參考:node.firstChild屬性
HTML DOM參考:node.lastChild屬性
HTML DOM參考:node.parentNode屬性
HTML DOM參考:node.nextSibling屬性
HTML DOM參考:node.nodeName屬性