The Node.previousSibling read-only property returns the node immediately preceding the specified one in its parent's childNodes list, or null if the specified node is the first in that list.


previousNode = node.previousSibling;


<img id="b0">
<img id="b1">
<img id="b2">
console.log(document.getElementById("b1").previousSibling); // <img id="b0">
console.log(document.getElementById("b2"); // "b1"


Gecko-based browsers insert text nodes into a document to represent whitespace in the source markup. Therefore a node obtained, for example, using Node.firstChild or Node.previousSibling may refer to a whitespace text node rather than the actual element the author intended to get.

See Whitespace in the DOM and W3C DOM 3 FAQ: Why are some Text nodes empty? for more information.

To navigate the opposite way through the child nodes list use Node.nextSibling.


Browser compatibility

FeatureChromeEdgeFirefoxInternet ExplorerOperaSafari
Basic support Yes12 ? ? Yes ?
FeatureAndroid webviewChrome for AndroidEdge mobileFirefox for AndroidOpera AndroidiOS SafariSamsung Internet
Basic support Yes Yes ? ? Yes ? Yes

See also

Document Tags and Contributors

Last updated by: zhuangyin,