XML DOM nextSibling属性

Node オブジェクトリファレンスマニュアル

定義と使用法

nextSibling属性は、ある要素の次に続く要素(同じ木の階層レベルで)を返します。

このノードが存在しない場合、属性はnullを返します。

構文:

nodeObject.nextSibling

ヒントと注記

注記:Internet Explorerは空白テキストノード(例えば、改行記号)をノード間で生成するのを無視しますが、Mozillaはこれを行いません。したがって、以下の例では、最初の子ノードのノードタイプをチェックする関数を使用します。

要素ノードのノードタイプは1であり、したがって最初の子ノードが要素ノードでない場合、次のノードに移動し、そのノードが要素ノードであるかどうかを再確認します。このプロセスは、最初の要素子ノードが見つかるまで続行します。この方法で、Internet ExplorerとMozillaで正しいメソッドを得ることができます。

ヒント:IEとMozillaブラウザ間のXML DOMの違いについてさらに詳しい情報が必要な場合は、以下のページにアクセスしてください DOMブラウザ 章節。

インスタンス

すべての例では、以下のXMLファイルを使用します books.xml、およびJavaScript関数 loadXMLDoc()

以下のコードスライスは、XMLドキュメント内の最初の<title>要素の次の同階層子ノードを取得できます:

//次の兄弟ノードが要素ノードであるか確認します
function get_nextsibling(n)
  {
  var x=n.nextSibling;
  while (x.nodeType!=1)
   {
   x=x.nextSibling;
   }
  return x;
  }
xmlDoc=loadXMLDoc("books.xml");
var x=xmlDoc.getElementsByTagName("title")[0];
document.write(x.nodeName);
document.write(" = ");
document.write(x.childNodes[0].nodeValue);
var y=get_nextsibling(x);
document.write("<br />次の同級ノード: ");
document.write(y.nodeName);
document.write(" = ");
document.write(y.childNodes[0].nodeValue);

出力:

title = Everyday Italian
次の同級ノード: author = Giada De Laurentiis

Node オブジェクトリファレンスマニュアル