为啥我们要在这里使用document.createDocumentFragment()呢?
如果是对前端技术感兴趣的同学说不定回去查一下,我相信大部分人可能就放过了吧!这里我查了一下资料:
在《javascript高级程序设计》一书的6.3.5:创建和操作节点一节中,介绍了几种动态创建html节点的方法,其中有以下几种常见方法:
crateAttribute(name): 用指定名称name创建特性节点
createComment(text): 创建带文本text的注释节点
createDocumentFragment(): 创建文档碎片节点
createElement(tagname): 创建标签名为tagname的节点
createTextNode(text): 创建包含文本text的文本节点
其中最感兴趣且以前没有接触过的一个方法是createDocumentFragment()方法,书中介绍说:在更新少量节点的时候可以直接向document.body节点中添加,但是当要向document中添加大量数据是,如果直接添加这些新节点,这个过程非常缓慢,因为每添加一个节点都会调用父节点的appendChild()方法,为了解决这个问题,可以创建一个文档碎片,把所有的新节点附加其上,然后把文档碎片一次性添加到document中。
参考:document的createDocumentFragment()方法http://www.cnblogs.com/yunfour/archive/2011/06/21/2085911.html