這篇文章主要講解了“如何動態(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)