文本片段如何理解

来源:2-2 create系列创建节点的方法

写额外飞1

2018-04-23 10:11:23

这两种写法都可以创建三个li,那createDocumentFragment 还有什么用?
window.onload=function(){
        	var ul=document.getElementById("myList");
        	var li=null;
        	for(var i=0;i<3;i++){
                li=document.createElement("li");
                li.appendChild(document.createTextNode("item"+(i+1)));
                ul.appendChild(li);
        	}
        	
        }	

    window.onload=function(){

            var fragment=document.createDocumentFragment();

        var ul=document.getElementById("myList");

        var li=null;

        for(var i=0;i<3;i++){

                li=document.createElement("li");

                li.appendChild(document.createTextNode("item"+(i+1)));

                fragment.appendChild(li);

        }

        ul.appendChild(li);

           }


写回答

1回答

怎么都被占用了呢

2018-04-23

最后一句应该是ul.appendChild(fragment);

由于代码的灵活性,实现一种效果的方法不是唯一的。所以你选择哪种方式都是可以的。

createDocumentFragment()方法,是创建一个虚拟的节点对象,或者是用来创建文档碎片节点。

把所有的新节点附加其上,然后把文档碎片的内容一次性添加到document中,可以节约使用DOM。

(通过createDocumentFragment创建的元素插入到文档中的是他的子元素)


0

0 学习 · 4826 问题

查看课程