国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

jquery引入外部CDN 加載失敗則引入本地jq庫

2024-05-06 15:33:56
字體:
來源:轉載
供稿:網友

由于第三方cdn庫的盛行,很多朋友會選擇使用第三方的類庫,從學習上來說不建議大家都使用類庫,這樣我們失去了很多學習的機會,但使用上來說解決了很多代碼兼容問題,這里都不多說了。

使用CDN加載jQuery類庫一是可以省一點帶寬,二是可以給用戶帶來更快的頁面加載體驗。

因為個人網站規模與cdn的帶寬問題,現在cdn費用雖然下來了,但也有不給力的時候,很多朋友都會選擇使用第三方的jquery庫,個人推薦幾個國內的 百度、新浪、bootcdn

下面的兩段代碼的作用 如果cdn的jquery沒有加載進來,我們可以使用本地的類庫。

jquery下載地址

第一種:推薦用法

<script src="https://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script><script type="text/javascript"> if (typeof jQuery == 'undefined') { document.write(unescape("%3Cscript src='/skin/mobile/js/jquery.min.js' type='text/javascript'%3E%3C/script%3E")); }</script>

上面,我們引用了百度 CDN的jQuery庫,接著我們在腳本代碼后添加了一個if語句來判斷jQuery庫是否加載成功,如果沒有加載成功我們動態加載本地jQuery庫。

其中,我們在document.write方法中直接使用了URL編碼,把“<”編碼為“%3C”,接著我們再使用unescape()方法把字符串還原過來。

我們通過unescape()方法把字符串轉換回來,我們可以看到輸出是一個正常的腳本引用代碼。

現在,我們有一個疑問就是“為什么不使用常規字符,而是要使用字符編碼呢?”,其實這是有原因的,這意味著我們代碼將可以在XML、XHTML或HTML中正常運行,而無需把代碼包含在CDATA中(具體請參考這里)。

第二種:

<script src="http://lib.sinaapp.com/js/jquery11/1.8/jquery.min.js"></script><script>window.jQuery || document.write(unescape("%3Cscript src='/skin/mobile/js/jquery.min.js' type='text/javascript'%3E%3C/script%3E"))</script>

上面這種跟第一種原理是一樣的,就是通過 || 運算符

表達式a || 表達式b : 計算表達式a(也可以是函數)的運算結果,

如果為 Fasle, 執行表達式b(或函數),并返回b的結果;

如果為 True,返回a的結果;

意思也是如果window.jQuery為false則加載本地的jquery庫。

requireJs 引用cdn失敗后加載本地js

問題:頁面中引用js和css過多會導致頁面加載變慢

                   引用cdn中的js和css會比直接在本地上傳時間短

解決辦法:我本地項目用到requireJs加載頁面中的js和css,變為cdn加載時需要改動如下

1.jquery: ["https://cdn.bootcssddd.com/jquery/1.11.1/jquery.min","static/lib/jquery/jquery-1.9.1.min"],

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 抚顺县| 定安县| 沈丘县| 深圳市| 白玉县| 玛曲县| 平舆县| 宜城市| 南投市| 和龙市| 清徐县| 许昌市| 察隅县| 民丰县| 万宁市| 扬州市| 老河口市| 成都市| 邛崃市| 天气| 大竹县| 崇左市| 通榆县| 静乐县| 集贤县| 德庆县| 都兰县| 开封县| 云安县| 布拖县| 兴宁市| 永安市| 云和县| 萍乡市| 崇义县| 阳泉市| 遵义县| 陈巴尔虎旗| 天长市| 宜章县| 加查县|