2

HTML DOM モデルを学習していますが、問題が発生しています。次のコードで createDocumentFragment() メソッドがどのように機能するのか理解できません。

HTML コード:

<!DOCTYPE html>
<html>
<body>

<ul><li>Coffee</li><li>Tea</li></ul>

<button onclick="myFunction()">Try it</button>

<script>

function myFunction()
{
var d=document.createDocumentFragment();
d.appendChild(document.getElementsByTagName("LI")[0]);
d.childNodes[0].childNodes[0].nodeValue="Milk";
document.getElementsByTagName("UL")[0].appendChild(d);
};

</script>

</body>
</html>

createDocumentFragment() メソッドは、ドキュメントの一部を抽出するときに役立つ架空の Node オブジェクトを作成することを理解しています。そして、appendChild() メソッドは、ノードをノードの最後の子に追加します。しかし、次の意味は何ですか:

 d.childNodes[0].childNodes[0].nodeValue="Milk"; 

ではないd.childNodes[0].nodeValue="Milk";でしょうか。上記のDOMモデルがどのように機能するかについて、誰かが明確に説明してくれませんか!.

4

1 に答える 1

2

<li>文字列 "Coffee" を表すテキスト ノードが内部にあり、これが"Milk" に置き換えられます。フラグメントの<li>最初の子は で、最初の子はテキスト ノードです。

于 2013-10-02T03:41:42.413 に答える