内射老阿姨1区2区3区4区_久久精品人人做人人爽电影蜜月_久久国产精品亚洲77777_99精品又大又爽又粗少妇毛片

js調(diào)用放到網(wǎng)站網(wǎng)頁底部的原因

2021-04-05    分類: 網(wǎng)站建設(shè)

瀏覽器加載頁面是按從上到下順序加載的。加載 js 并執(zhí)行的時候,會阻塞其他資源的加載。這是因為 js 可能會有 dom 、樣式等等操作,所以瀏覽器要先加載這段 js 并執(zhí)行,再加載放在它后面的 html、css。


因此,加入一段巨大的 js 放在最上面,瀏覽器首先要下載并執(zhí)行,這段時間里面,頁面是空白的。相比于加載了部分 html 和 樣式 但是沒有 js 交互功能,顯然是后者對于瀏覽者體驗要好。


然而,是否所有 js 都要放在最下面呢?并不是。


舉實際的例子:


html5shiv是一段 js 腳本,用來是早期 ie 兼容 html5 新增標(biāo)簽的支持。


這個 js 腳本,必須要放在上面 head 部分,為什么呢?因為在老 ie 瀏覽器下面,不支持

這樣的標(biāo)簽,所以用 js 來兼容。如果放在底部,等 ie 瀏覽器先報錯了,才會執(zhí)行這塊 js 沒多大用。


jquery 這類的庫,也是建議放在最上面的。首先大的疑問可能是 jquery 這么大,放在上面豈不是阻塞的很厲害?


不過 jquery 通常引用的是 cdn 地址,而且經(jīng)過 gzip 壓縮之后并不是很大,而且引用公共 cdn 上面的 jquery 話,很大幾率早已被用戶緩存下來了。所以可以不需要考慮阻塞產(chǎn)生的性能問題。


而我們都知道,js 是按順序執(zhí)行下來的。也就是你沒運行 jquery 之前,先運行了調(diào)用 jquery 函數(shù)的代碼,就會報錯。你可以控制你自己寫的 js 放在頁面最下面,放在 jquery 下面,但是你無法保證頁面上其他地方會不會有人圖省事直接在 html 代碼里面輸出 js。如果有,那么就會報錯。


所以我建議,類庫放在上面加載,其余代碼盡可能放在最底下加載。

文章題目:js調(diào)用放到網(wǎng)站網(wǎng)頁底部的原因
網(wǎng)頁地址:http://www.rwnh.cn/news/106515.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供自適應(yīng)網(wǎng)站虛擬主機、軟件開發(fā)、移動網(wǎng)站建設(shè)、App設(shè)計外貿(mào)網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

綿陽服務(wù)器托管
二连浩特市| 北流市| 静乐县| 清水县| 石渠县| 阳信县| 长海县| 佳木斯市| 通城县| 天水市| 望城县| 顺平县| 灌南县| 虎林市| 军事| 佛冈县| 京山县| 潜江市| 成武县| 吐鲁番市| 重庆市| 沙河市| 全南县| 莫力| 龙里县| 长治市| 盈江县| 军事| 永康市| 清涧县| 西安市| 宁安市| 河南省| 扎兰屯市| 林周县| 旬邑县| 板桥市| 晋州市| 滦平县| 乌鲁木齐县| 金秀|