XML DOM previousSibling プロパティ
Element オブジェクト
定義と用法
previousSibling プロパティは、選択した要素の前の兄弟ノード (同じツリーレベルの前方のノード) を返します。
前の兄弟ノードがなければ、このプロパティは NULL を返します。
構文
elementNode.previousSibling |
チップスと注
注: Firefox、および他のほとんどのブラウザは、空白または改行をテキストノードとみなしますが、
Internet Explorer はテキストノードとみなしません。
そのため、次の例には、前の兄弟ノードのノードタイプをチェックする機能を持たせています。
要素ノードは、nodeType が 1 です。前の兄弟ノードが要素ノードでなければ次のノードに移動し、
このノードが要素ノードであるかどうかをチェックします。
これは、前の兄弟ノード(要素ノードでなければなりません)が見つかるまで続きます。
この方法により、結果はすべてのブラウザで同じになります。
チップ: ブラウザ間の違いの詳細は、XML DOM チュートリアルの DOM ブラウザ 章を
参照してください。
例
次のコードは、loadXMLDoc() を使用して xmlDoc に
"books.xml" をロードし、
最初の <author> 要素から次の兄弟ノードを取得します:
例
//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("<br />Previous sibling: ");
document.write(y.nodeName);
document.write(" = ");
document.write(y.childNodes[0].nodeValue);
|
上記コードの出力は次の通りです:
author = Giada De Laurentiis
Previous sibling: title = Everyday Italian
|
試してください »
|
Try-It-Yourself デモ
nextSibling - ノードの次の兄弟ノードを取得します
Element オブジェクト
|