headjs實(shí)現(xiàn)網(wǎng)站并行加載但順序執(zhí)行JS
并行加載JS,但是執(zhí)行的時(shí)候卻按順序執(zhí)行,提高網(wǎng)站速度
<script src="js/head.min.js"></script> <script type="text/javascript"> head.js("js/jquery-1.6.1.min.js","js/jquery.validate.min.js","js/my_validate.js"); </script>
注意:head.js("js/jquery-1.6.1.min.js","js/jquery.validate.min.js","js/my_validate.js"); 里面包含的JS在本地文件夾里面必須有,否則在IE中部執(zhí)行
如:head.js("js/jquery-1.6.1.min.js","js/jquery.validate.min.js","js/alert.js");如果本地沒(méi)有jquery.validate.min.js文件,在IE下將不執(zhí)行alert.js
1、異步加載其他 JS 文件,比如 Jquery 。雖然之前我也是把引用的外部 JS 放在頁(yè)面底部的,但是用了 head.js 之后,我可以把所有 JS 內(nèi)容匯集成一個(gè)文件,放在頁(yè)面的最后。然后就可以在這個(gè) JS 文件里來(lái)引用其他外部 JS 。比如我的頁(yè)面里最下方引用了一個(gè) JS 內(nèi)容為:
head(function() { ........ }); /* part 1 */ head.js("http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"); /* part 2 */
其中第一部分是頁(yè)面加載完成后要執(zhí)行的 JS 腳本,第二部分是執(zhí)行腳本前先引用的外部 JS 文件地址,很明顯如果想要升級(jí)使用的 Jquery 版本,我只要修改這個(gè)文件就行了而不用變動(dòng)頁(yè)面內(nèi)容。這對(duì)于采用靜態(tài)發(fā)布的 MovableType 來(lái)說(shuō)很有用。
2、CSS3 屬性支持度檢測(cè)。說(shuō)起來(lái)很拗口,意思就是可以分辨出瀏覽器是否支持某條 CSS3 屬性。如果支持某條屬性,那么將會(huì)在頁(yè)面的 HTML 節(jié)點(diǎn)上加上一個(gè)以這個(gè)屬性命名的 class ,如果不支持則這個(gè) class 的名字就有個(gè) no- 前綴。比如,IE6 不支持 boxshadow 屬性的,那么瀏覽這使用 IE6 訪問(wèn)頁(yè)面時(shí),頁(yè)面的 html 節(jié)點(diǎn)就是類似這樣的:<html class="no-boxshadow"> 。
這樣就可以在 CSS 文件里設(shè)定當(dāng)瀏覽器不支持某個(gè)高級(jí)屬性的時(shí)候用其他的方案來(lái)替代。
.boxshadow .box{ box-shadow: 0px 0px 5px #bbb; } .no-boxshadow .box{ border: 2px solid #bbb; }
目前 head.js 可以檢測(cè)的 CSS3 屬性有 borderimage borderradius boxshadow opacity reflections rgba textshadow transforms transitions 。
3、head.js 可以檢測(cè)瀏覽器的種類、版本,還可以檢測(cè)當(dāng)前訪問(wèn)的頁(yè)面相對(duì)于網(wǎng)站根目錄的路徑,更酷的,head.js 可以動(dòng)態(tài)地檢測(cè)到瀏覽器當(dāng)前窗口大小。并且,把前面這幾個(gè)屬性都動(dòng)態(tài)地傳遞給 html 節(jié)點(diǎn),添加上相應(yīng) class !這樣再配合 CSS 就可以制作出一個(gè)適應(yīng)各瀏覽器、每個(gè)頁(yè)面都獨(dú)特得、隨著窗口大小的改變自動(dòng)變換排版的酷設(shè)計(jì)了。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家有所幫助,同時(shí)也希望多多支持腳本之家!
- js實(shí)現(xiàn)多個(gè)倒計(jì)時(shí)并行 js拼團(tuán)倒計(jì)時(shí)
- 利用Chrome DevTools直接調(diào)試Node.js和JavaScript的方法詳解(并行)
- 深入理解JavaScript中的并行處理
- Javascript的并行運(yùn)算實(shí)現(xiàn)代碼
- 前端 javascript 實(shí)現(xiàn)文件下載的示例
- Javascript前端下載后臺(tái)傳來(lái)的文件流代碼實(shí)例
- JavaScript實(shí)現(xiàn)多文件下載方法解析
- 原生js實(shí)現(xiàn)文件上傳、下載、封裝等實(shí)例方法
- JavaScript實(shí)現(xiàn)文件下載并重命名代碼實(shí)例
- vue實(shí)現(xiàn)在線預(yù)覽pdf文件和下載(pdf.js)
- 使用 JavaScript 創(chuàng)建并下載文件(模擬點(diǎn)擊)
- node.js express框架實(shí)現(xiàn)文件上傳與下載功能實(shí)例詳解
- JavaScript 中如何實(shí)現(xiàn)大文件并行下載
相關(guān)文章
JS實(shí)現(xiàn)仿新浪黃色經(jīng)典滑動(dòng)門效果代碼
這篇文章主要介紹了JS實(shí)現(xiàn)仿新浪黃色經(jīng)典滑動(dòng)門效果代碼,是一款非常簡(jiǎn)單的經(jīng)典鼠標(biāo)響應(yīng)滑動(dòng)切換效果,涉及JavaScript基于鼠標(biāo)事件動(dòng)態(tài)操作頁(yè)面元素的技巧,需要的朋友可以參考下2015-09-09js經(jīng)驗(yàn)分享 JavaScript反調(diào)試技巧
在這篇文章中,我打算跟大家總結(jié)一下關(guān)于JavaScript反調(diào)試技巧方面的內(nèi)容。值得一提的是,其中有些方法已經(jīng)被網(wǎng)絡(luò)犯罪分子廣泛應(yīng)用到惡意軟件之中了,需要的朋友可以參考下2018-03-03defer屬性導(dǎo)致引用JQuery的頁(yè)面報(bào)“瀏覽器無(wú)法打開(kāi)網(wǎng)站xxx,操作被中止”錯(cuò)誤的解決方法
defer屬性導(dǎo)致引用JQuery的頁(yè)面報(bào)“瀏覽器無(wú)法打開(kāi)網(wǎng)站xxx,操作被中止”錯(cuò)誤2010-04-04JSQL 基于客戶端的成績(jī)統(tǒng)計(jì)實(shí)現(xiàn)方法
JSQL應(yīng)用案例 基于客戶端的成績(jī)統(tǒng)計(jì),下面我把整個(gè)example的代碼貼出來(lái),歡迎拍磚2010-05-05JavaScript數(shù)組方法之findIndex()的用法詳解
findIndex()方法是一個(gè)非常實(shí)用的數(shù)組方法,可以幫助我們快速查找符合某個(gè)條件的元素,本文給大家介紹JavaScript數(shù)組方法之findIndex()的用法,感謝的朋友跟隨小編一起看看吧2023-10-10bootstrap table實(shí)現(xiàn)合并單元格效果
這篇文章主要為大家詳細(xì)介紹了bootstrap table實(shí)現(xiàn)合并單元格效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-12-12JS中的public和private對(duì)象,即static修飾符
先看下面的例子,它將告訴我們?cè)贘S世界中也有C#里的public , private ,及static等2012-01-01