色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

高效將字符串轉換為文檔碎片(JavaScript)

  我在Javascript 動態插入技術》中,就介紹了用innerHTML轉換為文檔碎片的技術了,這個被各大類庫所取用。但事實上,如果我們的字符串沒有th,tbody,col等需要通過包裝才能動態生成的標簽,也沒有那個特煩人的script標簽,我們在提高性能上還是有許多方法,如insertAdjacentHTML。但想使用insertAdjacentHTML,限制非常多的,如在IE下避開innerHTML為只讀的元素,FF需要很高的版本才支持,加之調用對象(如jQuery)的元素往往只能是節點,不能是字符串,因此很多情況下,我們還是先需要把它轉換為節點集合,而今天我介紹的是使用createContextualFragment直接將字符串轉換為文檔碎片!

  傳統的innerHTML方式會產生一個多余的div元素做轉換器,然后再使用createDocumentFragment創建一個文檔碎片,一個個節點轉移上去。如果使用createContextualFragment就可以避免這一步了。

//http://www.cnblogs.com/rubylouvre/archive/2011/04/15/2016800.html
var str = '<div><strong>test</strong></div>';
var range =document.createRange();
range.selectNodeContents(document.documentElement);
var fragment =range.createContextualFragment(str);
document.body.appendChild(fragment);

it知識庫高效將字符串轉換為文檔碎片(JavaScript),轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 雷山县| 崇左市| 鞍山市| 大埔县| 韩城市| 桐梓县| 宁河县| 友谊县| 曲沃县| 大丰市| 泾源县| 五华县| 嘉峪关市| 岢岚县| 泽库县| 阿拉善盟| 东安县| 太仓市| 柳州市| 新津县| 汉中市| 河间市| 哈巴河县| 杂多县| 和林格尔县| 玉环县| 仙游县| 庆安县| 睢宁县| 鹿泉市| 岗巴县| 日土县| 福清市| 沅江市| 平顺县| 泰宁县| 讷河市| 兴国县| 临沂市| 石门县| 北安市|