2009-11-21 5 views
11

ECM-357 Annex Aで説明されているすべてのオプションのE4X機能を実装していますが、domNodeList(§A.1.2および§A.2.2)の実装に問題があります。自分自身のNodeListオブジェクトを作成するにはどうすればよいですか?DOMノードリストの作成

新しいXMLDocumentを作成してノードのすべてのdomNode()表現をXMLListに追加しても、コメントとしてすべてを含むNodeListをどのように作成でき、処理命令は通常除外されているかわかりません。

+0

この質問の背景は何ですか?何を書いているの? –

+2

Ryan、domNodeListは表示されませんか?私はECMA-357で定義されている場所も明確に述べています。 –

+0

これはなぜCWですか? –

答えて

16

ドキュメントフラグメントのchildNodes属性を使用してNodeListを作成できることがわかりました。これは私の解決策でした:

XML.prototype.function::domNodeList = function() { 
    var fragment = document.createDocumentFragment(), 
    len = this.length(), 
    i = 0; 
    for (; i < len; i++) { 
     fragment.appendChild(this[i].domNode()); 
    } 
    return fragment.childNodes; 
} 
+1

これは、追加されたノードをdomから削除します。 – Pancho

関連する問題