中文字幕日韩精品一区二区免费_精品一区二区三区国产精品无卡在_国精品无码专区一区二区三区_国产αv三级中文在线

如何動態(tài)加載js文件

這篇文章主要講解了“如何動態(tài)加載js文件”,文中的講解內(nèi)容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“如何動態(tài)加載js文件”吧!

創(chuàng)新互聯(lián)專注骨干網(wǎng)絡(luò)服務(wù)器租用十余年,服務(wù)更有保障!服務(wù)器租用,內(nèi)江服務(wù)器托管 成都服務(wù)器租用,成都服務(wù)器托管,骨干網(wǎng)絡(luò)帶寬,享受低延遲,高速訪問。靈活、實現(xiàn)低成本的共享或公網(wǎng)數(shù)據(jù)中心高速帶寬的專屬高性能服務(wù)器。

1、動態(tài)的插入script標簽來加載腳本。

  function loadScript(url, callback) {
    const script = document.createElement('script');
    script.type = 'text/javascript';
    // 處理IE
    if (script.readyState) {
      script.onreadystatechange = function () {
        if (script.readyState === 'loaded' || script.readyState === 'complete') {
          script.onreadystatechange = null;
          callback();
        }
      }
    } else {
      // 處理其他瀏覽器的情況
      script.onload = function () {
        callback();
      }
    }
    script.src = url;
    document.body.append(script);
  }
 
  // 動態(tài)加載js
  loadScript('file.js', function () {
    console.log('加載完成');
  })

2、通過xhr方式加載js文件,不過通過這種方式的話,就可能會面臨著跨域的問題。

  const xhr = new XMLHttpRequest();
  xhr.open('get', 'file.js');
  xhr.onreadystatechange = function () {
    if (xhr.readyState === 4) {
      if (xhr.status >= 200 && xhr.status < 300 || xhr.status === 304) {
        const script = document.createElement('script');
        script.type = 'text/javascript';
        script.text = xhr.responseText;
        document.body.append(script);
      }
    }
  }

3、將多個js文件合并為同一個并壓縮。

目前,大多數(shù)瀏覽器已經(jīng)支持并行下載js文件,但并行下載仍有一定數(shù)量的限制(基于瀏覽器,一些瀏覽器只能下載4個)。此外,每個js文件都需要建立一個額外的http連接,并且4個25KB的文件比100KB的文件大。因此,最好將多個js文件合并為同一個并壓縮代碼。

感謝各位的閱讀,以上就是“如何動態(tài)加載js文件”的內(nèi)容了,經(jīng)過本文的學習后,相信大家對如何動態(tài)加載js文件這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關(guān)知識點的文章,歡迎關(guān)注!

分享標題:如何動態(tài)加載js文件
當前URL:http://m.rwnh.cn/article18/jipdgp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供自適應網(wǎng)站、小程序開發(fā)、靜態(tài)網(wǎng)站、手機網(wǎng)站建設(shè)、動態(tài)網(wǎng)站

廣告

聲明:本網(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ǎng)站優(yōu)化排名
夹江县| 呼图壁县| 平果县| 明溪县| 武夷山市| 襄垣县| 株洲县| 襄汾县| 墨玉县| 安龙县| 江陵县| 龙川县| 长海县| 布拖县| 无锡市| 睢宁县| 湄潭县| 历史| 嘉定区| 武宣县| 汾西县| 阳高县| 靖宇县| 扎赉特旗| 水城县| 循化| 天等县| 宣威市| 绥中县| 怀仁县| 平乡县| 尚志市| 青岛市| 法库县| 平顶山市| 拜泉县| 工布江达县| 财经| 旺苍县| 什邡市| 龙南县|