在網(wǎng)頁(yè)呈現(xiàn)過(guò)程中,DOM樹(shù)將根據(jù)HTML元素生成,然后綁定到特定的CSS樣式。這意味著頁(yè)面上的DOM元素越多,渲染時(shí)間將消耗越多。因此,應(yīng)該盡可能減少DOM元素的數(shù)量。
然而,很難確定頁(yè)面有多少DOM元素。下面的代碼允許您查看頁(yè)面中所有元素的數(shù)量
看看下面的谷歌主頁(yè),頁(yè)面看起來(lái)很簡(jiǎn)單,但里面有300多個(gè)元素
瀏覽器在加載內(nèi)容時(shí)遵循以下原則:將根據(jù)域名劃分下載內(nèi)容。相同域名下的內(nèi)容可以并行下載,但并行下載連接的數(shù)量將受到限制。
應(yīng)該注意的是,在同一個(gè)網(wǎng)頁(yè)下請(qǐng)求的域名不應(yīng)該太多,因?yàn)檫@將導(dǎo)致DNS查詢問(wèn)題。
1常見(jiàn)的方法是在頁(yè)面上加載廣告。如果使用框架,則可以在不阻塞主頁(yè)的情況下與頁(yè)面并行加載
2瀏覽器將沙盒iframe以確保內(nèi)容安全
以下方法可用于解決阻止主頁(yè)上的onload事件的問(wèn)題
如前一點(diǎn)所述,頁(yè)面對(duì)相同域名下的資源連接數(shù)量有限制,而iframe和主頁(yè)共享相同的下載連接池。這樣,iframe將競(jìng)爭(zhēng)主頁(yè)的連接請(qǐng)求,導(dǎo)致主頁(yè)的加載速度較慢。
雖然使用iframe也是有益的,但是我們應(yīng)該盡***努力減少iframe的使用。我們可以用div代替
在網(wǎng)絡(luò)中,每個(gè)HTTP請(qǐng)求的性能消耗都很昂貴。如果發(fā)送HTTP請(qǐng)求,返回為404,則會(huì)浪費(fèi)大量資源。
避免404主要是針對(duì)網(wǎng)站開(kāi)發(fā)者。網(wǎng)站開(kāi)發(fā)人員在上線前應(yīng)該進(jìn)行測(cè)試,以避免所有可能出現(xiàn)的404情況。
今天我們總結(jié)了優(yōu)化web性能的幾種措施。你明白嗎?
下面是對(duì)前一篇文章的總結(jié),感興趣的可以看一下
經(jīng)典訪談問(wèn)題web前端性能優(yōu)化方法(1)
web前端性能優(yōu)化方法的延遲加載