一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

加速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操作優化,轉載需保留來源!

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

主站蜘蛛池模板: 伊人精品国产 | 成人亚洲视频 | 亚洲国产精久久小蝌蚪 | 国产成人一区二区三区影院免费 | 91精品网站 | 国产成人精品在线观看 | 凹凸精品视频分类国产品免费 | 禁断の肉体乱爱中文字幕欧 | 伊人久久99 | 欧美成人午夜视频免看 | 婷婷色综合久久 | 在线观看色网 | 中文一区二区 | 综合国产在线 | 亚洲图片一区 | 狠狠干伊人 | 久久99精品久久久久久秒播 | 日韩精品一区二区三区中文字幕 | 91国内视频在线观看 | 久久久久精彩视频 | 精品一区二区三区四区在线 | 精品一区二区三区免费 | 国产精品亚洲欧美日韩久久 | 亚洲欧洲成人 | 浮力影院第一页小视频国产在线观看免费 | 欧美a色 | 午夜欧美 | 亚洲国产人成在线观看 | 日韩精品一区二区三区视频网 | 亚洲乱强伦 | 日本精品高清一区二区不卡 | 91精品福利观看 | 久久综合狠狠综合狠狠 | 狠狠色伊人亚洲综合网站l 狠狠色伊人亚洲综合网站色 | 好吊色青青草 | 日本一区二区在线免费观看 | 国产原创麻豆精品视频 | 最近2018中文字幕免费视频 | 国产在线一区二区视频 | 怡红院亚洲红怡院天堂麻豆 | 久久青青草原精品无线观看 |