特にXPath式を使用してノードを選択する、xml用のクロスブラウザインターフェースを作成しようとしています。
IE は簡単でした:
this.documentElement.selectNodes(xPathStr);
配列のようなアクセス (results[i]
またはresults(i)
) を提供するオブジェクトを返します。
ただし、Firefox/Chrome はそれほど簡単ではありません。
this.xpathEvaluator.evaluate(xPathStr, this.documentElement, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null);
を使用して反復するか、ほぼ配列のようにアクセスできる XPathResult を返しますresults.snapshotItem(i)
。
やってみた
var items = results.snapshotItem;
しかし、それを使用しようとするとエラーが発生しました(「WrappedNativeプロトタイプオブジェクトに対する不正な操作」)。
これを配列のような変数としてキャッシュする方法についてのアイデアはありますか、それとも配列を手動で作成してから返すのに行き詰まっていますか?