四虎精品视频-四虎精品成人免费网站-四虎黄色网-四虎国产视频-国产免费91-国产蜜臀97一区二区三区

加速JavaScript:DOM操作優化

  原文:《Speeding up JavaScript: Working with the DOM》

  作者: KeeKim Heng, Google Web Developer

  在我們開發互聯網應用(RIA)時,我們經常寫一些JavaScript腳本來修改或者增加頁面元素,這些工作最終是DOM——或者說文檔對象模型——來完成的,而我們的實現方式會影響到應用的響應速度。

  DOM操作會導致瀏覽器重解析(reflow),這是瀏覽器的一個決定頁面元素如何展現的計算過程。直接修改DOM,修改元素的CSS樣式,修改瀏覽器的窗口大小,都會觸發重解析。讀取元素的布局屬性比如offsetHeight或者offsetWidth也會觸發重解析。重解析需要花費計算時間,因此重解析觸發的越少,應用就會越快。

  DOM操作通常要不就是修改已經存在的頁面上的元素,要不就是創建新的頁面元素。下面的4種優化方案覆蓋了修改和創建DOM節點兩種方式,幫助你減少觸發瀏覽器重解析的次數。

  方案一:通過CSS類名切換來修改DOM

  這個方案讓我們可以一次性修改一個元素和它的子元素的多個樣式屬性而只觸發一次重解析。

  需求:

  (emu注:原文作者寫到這里的時候腦子顯然短路了一下,把后面的Out-of-the-flow DOM Manipulation模式要解決的問題給擺到這里來了,不過從示范代碼中很容易明白作者真正想描述的問題,因此emu就不照翻原文了)

  我們現在需要寫一個函數來修改一個超鏈接的幾個樣式規則。要實現很簡單,把這幾個規則對應的屬性逐一改了就好了。但是帶來的問題是,每修改一個樣式屬性,都會導致一次頁面的重解析。

 function selectAnchor(element) {  
element.style.fontWeight
= 'bold';
element.style.textDecoration
= 'none';
element.style.color
= '#000';
}

it知識庫加速JavaScript:DOM操作優化,轉載需保留來源!

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

主站蜘蛛池模板: 命运的逆转| 恋爱症候群| junk boy| 牛油果营养价值| 中医基础理论试题题库及答案| 演员任贤齐简历| jenna haze| 皮囊之下| 李欣聪个人资料| 林智妍《邂逅》未删减| 刑三狗| 料音| 回术人生的重来人生| 肖叮叮的剿匪记 电视剧免费观看 黑暗之心电影完整在线观看 | 米莎巴顿| 边陲迷雾| 张俪eyely| 谭凯琪| 每天一分钱每天翻一倍连续30天| 93夜之女| 吃屎视频搞笑视频| 张静东| 今日航班一览表| 格雷的五十道阴影| 雷雨剧本完整版| 女生被艹在线观看| 变态视频在线观看| 电视剧《反击》主要演员| 李顺大造屋| 公主抱的图片| 菊地亚美| 烽火硝烟里的青春演员表| 来5566看av激情电影使劲撸| 无限资源日本好片| 边缘战士| 爸爸别走歌曲原唱| 法医秦明1至6部顺序| 雪中悍刀行第一季电视剧免费观看| 电影壮志凌云| 男骑女| 4480午夜|