中文字幕在线一区二区在线,久久久精品免费观看国产,无码日日模日日碰夜夜爽,天堂av在线最新版在线,日韩美精品无码一本二本三本,麻豆精品三级国产国语,精品无码AⅤ片,国产区在线观看视频

      Javascript加載方法

      時間:2024-07-11 10:22:01 JavaScript 我要投稿
      • 相關(guān)推薦

      Javascript加載方法

        Javascript文件動態(tài)加載一直是比較困擾的一件事情,像網(wǎng)絡(luò)上傳的比較常見的做法:

        function loadjs(fileurl){ var sct = document.createElement("script"); sct.src = fileurl; document.head.appendChild(sct);}

        然后我們來測試一下結(jié)果:

        function loadjs(fileurl){ var sct = document.createElement("script"); sct.src = fileurl; document.head.appendChild(sct); } loadjs("http://code.jquery.com/jquery-1.12.0.js"); loadjs("http://maxcdn.bootstrapcdn.com/bootstrap/3.3.2/js/bootstrap.min.js") loadjs("http://bootboxjs.com/bootbox.js")

        代碼加載完后,會出現(xiàn)下圖的錯誤:

        jquery明明是加載在第一個處理,為什么還是報jQuery不存在的對象呢?

        因為這樣加載,相當(dāng)于開啟了三個線程,只是jquery這個文件先啟動線程,而jquery執(zhí)行完這個線程的時間,超過了后面兩個時間. 因此后面執(zhí)行完的,可能沒能找到j(luò)query這個對象。

        然這種方式怎么處理呢?

        其實(shí)文件的加載是有個狀態(tài)處理的.文件的加載有個onload事件,就是可以監(jiān)聽文件是否加載完成的事件.

        因此我們可以考慮這個方法來處理我們想要的結(jié)果.我們用直觀的方式來處理.改進(jìn)后的代碼如下:

        function loadjs(fileurl, fn){ var sct = document.createElement("script"); sct.src = fileurl; if(fn){ sct.onload = fn; } document.head.appendChild(sct); } loadjs("http://code.jquery.com/jquery-1.12.0.js",function(){ loadjs("http://maxcdn.bootstrapcdn.com/bootstrap/3.3.2/js/bootstrap.min.js",function(){ loadjs("http://bootboxjs.com/bootbox.js") }) });

        OK,執(zhí)行完這個代碼之后,加載文件都是在前一個加載完成后,才會加載另外一個,這樣就不會造成找不到用到的對象了.

        然后我們來執(zhí)行一個彈出框的效果,代碼里面使用了 Bootbox.js 插件. 加載代碼如下:

        loadjs("http://code.jquery.com/jquery-1.12.0.js",function(){ loadjs("http://maxcdn.bootstrapcdn.com/bootstrap/3.3.2/js/bootstrap.min.js",function(){ loadjs("http://bootboxjs.com/bootbox.js",function(){ bootbox.alert("Hello world!", function() { Example.show("Hello world callback"); }); }) }) });

        刷新頁面,就會直接顯示彈出框:

        動態(tài)加載的代碼,往往容易在這里花費(fèi)很多時間調(diào)試.大家最好的辦法就是寫一個最簡單的例子,理解其中的原因. 這里的代碼都可以進(jìn)行封裝,還可以加入CSS文件的加載.作為自己的插件使用。

      【Javascript加載方法】相關(guān)文章:

      JavaScript常用方法匯總10-25

      JavaScript數(shù)組常用方法介紹09-04

      javascript跨域訪問的方法07-09

      javascript編程異常處理的方法08-04

      JavaScript fontcolor方法入門實(shí)例07-07

      使用ajax操作JavaScript對象的方法09-28

      詳解JavaScript中的splice()使用方法08-20

      關(guān)于javascript尋找錯誤方法整理05-23

      最常用的20個javascript方法函數(shù)09-10

      Javascript中arguments對象的詳解和使用方法08-20

      主站蜘蛛池模板: 国产精品久久久久久久久久影院| 久久国产高潮流白浆免费观看 | 精品久久日产国产一区| 男女好痛好深好爽视频一区| 熟女少妇av免费观看| 日本一区二区三区在线观看免费 | 亚洲精品午夜精品国产| 日韩精人妻无码一区二区三区| 辽源市| 精品人妻一区二区蜜臀av| 国产精品玖玖资源站大全| 国内自拍视频在线观看| 加勒比东京热久久综合| 蓝山县| 呼图壁县| av中文字幕一区二区三区| 日本一区二区三区观看视频 | 国产丝袜美腿美女视频| 色老汉亚洲av影院天天精品| 久久精品国产久精国产69| 亚洲Va中文字幕无码毛片下载| 日产精品一区二区免费| 国产亚洲av天天在线观看| 久久AⅤ无码精品色午麻豆| 黄梅县| 旺苍县| 余庆县| 齐河县| 罗源县| 成安县| 延庆县| 视频精品熟女一区二区三区| 巨鹿县| 69av视频在线| 中文字幕无码免费久久| 日韩精品一区二区三区四区视频| 一区二区三区熟女人妻| 99国产精品无码专区| 精品一区二区三区久久久| 国产AV无码无遮挡毛片| 99久久亚洲综合国产一区|