欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

如何提高Dom訪問速度

 更新時間:2017年01月05日 08:36:06   作者:大朋展翅  
在瀏覽器中對于Dom的操作和普通的腳本的操作處于兩個不同的dll中,兩個dll的交互是比較耗時的,優(yōu)化對Dom的操作可以提高腳本的執(zhí)行速度。本文是對如何優(yōu)化的一些總結(jié)。下面跟著小編一起來看下吧

在瀏覽器中對于Dom的操作和普通的腳本的操作處于兩個不同的dll中,兩個dll的交互是比較耗時的,優(yōu)化對Dom的操作可以提高腳本的執(zhí)行速度。下面是對如何優(yōu)化的一些總結(jié):

將需要多次操作的節(jié)點存儲在一個變量中,避免多次獲取。

對于大多數(shù)瀏覽器來說innerHTML操作比Dom操作速度要快,最新的瀏覽器則相反,但對于大多數(shù)日常操作來說具體差異并不大,另外,如果需要新創(chuàng)建的html片段中的腳本能夠執(zhí)行則需要使用Dom操作。

不建議用數(shù)組的 length 屬性做循環(huán)判斷條件。訪問集合的 length 比數(shù)組的length 還要慢。當(dāng)每次迭代過程訪問集合的 length 屬性時,它導(dǎo)致集合器更新??梢院唵蔚膶ength保存在一個變量中,也可以將集合先存儲在數(shù)組中。

遍歷 children 比 childNodes 更快,因為集合項更少。

重繪和重排版是負擔(dān)很重的操作,可能導(dǎo)致網(wǎng)頁應(yīng)用的用戶界面失去相應(yīng)。所以,十分有必要盡可能減少這類事情的發(fā)生。減少方法有三種,一:將需要影響的集合先隱藏,在處理完成后再展示;二:創(chuàng)建需操作節(jié)點的備份,對備份處理完成后替換原節(jié)點;三:創(chuàng)建節(jié)點群,對節(jié)點群操作完成后替換到原節(jié)點,最高效,操作方式如:

 var fragment = document.createDocumentFragment();//創(chuàng)建節(jié)點群,文檔片段
 appendDataToElement(fragment, data);//增加節(jié)點到節(jié)點群
 document.getElementById('mylist').appendChild(fragment);//僅引發(fā)一次重新排版

另外對行內(nèi)樣式的操作可以通過document.getElementById("doc").style.cssText修改元素style屬性

以上就是本文的全部內(nèi)容,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,同時也希望多多支持腳本之家!

相關(guān)文章

最新評論