国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
淺談前端性能優(yōu)化(四)——將script放在底部

script的兩個屬性——async和defer:

① 沒有defer或async,瀏覽器會立即加載并執(zhí)行指定的JS腳本,不等待后續(xù)文檔元素,讀到JS腳本就加載并執(zhí)行。

② 有async,加載后續(xù)文檔元素的過程將和JS的加載與執(zhí)行并行進行(異步)。

③ 有defer,加載后續(xù)文檔元素的過程將和JS的加載并行進行(異步),但JS的執(zhí)行要在所有文檔元素解析完成之后,DOMContentLoaded 事件觸發(fā)之前完成。

二者的詳細(xì)對比請見:http://blog.csdn.net/zhouziyu2011/article/details/60149590

 

script放在底部的原理:

script沒有async和defer時,JS文件將在下載后立即執(zhí)行。這種情況下,script放在頂部會阻塞頁面呈現(xiàn),在網(wǎng)速慢的情況下會導(dǎo)致“白屏”,直到腳本下載完畢才繼續(xù)呈現(xiàn)頁面。因此,script放在底部可以讓頁面盡快呈現(xiàn)。


script全部放在head中會出現(xiàn)的問題:

在需要操作body中的某元素時,可能找不到該元素,因此,若要放在head中,一般需要綁定一個監(jiān)聽windows.onload=function(){ ... },當(dāng)文檔全部解析完之后再執(zhí)行script代碼。


測試實例:

測試demo:http://stevesouders.com/hpws/move-scripts.php

頁面中嵌入2個iframe,左邊是script放在頂部的情況,右邊是script放在底部的情況。

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
深入淺出瀏覽器渲染原理
<script>元素
詳解瀏覽器渲染頁面的過程
性能優(yōu)化之html、css、js三者的加載順序
HTML中使用JavaScript實例代碼
html,css,js加載順序
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服