XML DOM previousSibling 屬性

2018-08-05 17:42 更新

XML DOM previousSibling 屬性


Node 對象參考手冊 Node 對象

定義和用法

previousSibling 屬性返回元素之前緊接的節(jié)點(處于同一樹層級中)。

如果無此節(jié)點,則該屬性返回 null。

語法

nodeObject.previousSibling

提示和注釋

注釋:Firefox 以及大多數(shù)其他的瀏覽器,會把節(jié)點間生成的空的空格或者換行當作文本節(jié)點,而 Internet Explorer 會忽略節(jié)點間生成的空白文本節(jié)點。因此,在下面的實例中,我們會使用一個函數(shù)來檢查上一個同級節(jié)點的節(jié)點類型。

元素節(jié)點的節(jié)點類型是 1,因此如果上一個同級節(jié)點不是一個元素節(jié)點,它就會移至下一個節(jié)點,然后繼續(xù)檢查此節(jié)點是否為元素節(jié)點。整個過程會一直持續(xù)到上一個同級元素節(jié)點被找到為止。通過這個方法,我們就可以在所有的瀏覽器中得到正確的結(jié)果。

提示:如需了解更多有關(guān)瀏覽器差異的知識,請在我們的 XML DOM 教程中訪問我們的 DOM 瀏覽器 章節(jié)。


實例

下面的代碼片段使用 loadXMLDoc() 把 "books.xml" 載入 xmlDoc 中,并從第一個 <author> 元素取得上一個同級節(jié)點:

實例

//check if the previous sibling node is an element node
function get_previoussibling(n)
{
x=n.previousSibling;
while (x.nodeType!=1)
{
x=x.previousSibling;
}
return x;
}

xmlDoc=loadXMLDoc("books.xml");

x=xmlDoc.getElementsByTagName("author")[0];
document.write(x.nodeName);
document.write(" = ");
document.write(x.childNodes[0].nodeValue);

y=get_previoussibling(x);

document.write("
Previous sibling: ");
document.write(y.nodeName);
document.write(" = ");
document.write(y.childNodes[0].nodeValue);

上面的代碼將輸出:

author = Giada De Laurentiis
Previous sibling: title = Everyday Italian

嘗試一下 ?

嘗試一下 Demos

nextSibling - Get the next sibling of a node


Node 對象參考手冊 Node 對象
以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號