0

次のコードを見てください。

  var oFra = document.createDocumentFragment();
    var myDiv = document.createElement("div");
    myDiv.id="myId";
    oFra.appendChild(myDiv);
    oFra.getElementById("myId");

この場合、変数 myDiv を使用して documentFragement 内に挿入したばかりの div への参照がありますか? 先に進んで、この documentFragement を実際の DOM に追加するとします。この「myDiv」変数を使用して、id="myId" で div にアクセスできますか?

4

1 に答える 1

0

これを試してみると、動作します: http://www.jsfiddle.net/dactivo/4BSaF/

問題は、"oFra" + getElementById を直接使用できないことです。フラグメントを追加すると、DOM の div "myId" にアクセスできます。

  <div id="test"></div>
<script type="text/javascript">
     var oFra = document.createDocumentFragment();
        var myDiv = document.createElement("div");
        myDiv.id="myId";
    myDiv.innerHTML="hola";
        oFra.appendChild(myDiv);
       // oFra.getElementById("myId");


    document.getElementById("test").appendChild(oFra);

    alert(document.getElementById("myId").innerHTML);

</script>
于 2010-10-21T06:48:00.573 に答える