==============
使用其餘服務器引入JS文件,
1,減輕服務器壓力
2,速度快
3,能夠緩存javascript
cdnjs庫,更新比較快
https://cdnjs.com/css
cdn庫 引入JS文件如:jquery
bootcdn : https://www.bootcdn.cn/html
百度靜態資源公共庫,有時候打不開。java
使用CDN引入JS文件的優勢:
1,直接在搜索框輸入:jqueryjquery
2,點擊選擇須要的版本,複製地址便可。ajax
3,把該地址放到引入標籤中的src中 <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/
libs/jquery/3.4.1/jquery.min.js"></script>chrome
使用CDN引入JS文件的缺點:
1,若是被引入JS文件的服務器不穩定,那麼就會引入失敗,致使頁面沒法正常顯示。
解決方案以下:
-------
<!-- 在使用CDN引入時,因服務器不穩定致使沒法JS文件引入失敗,則引入本地服務器的JS文件便可: -->
</body>
<!-- 這裏使用CDN引入jquery.js文件,僅用發佈時使用,開發時比較慢 -->
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>瀏覽器
<script>
/*
開發時使用本地效率比較高
判斷若是上面的cdn引入的jquery.js文件沒有成功(如:服務器不穩定致使)
則引入本地的jquery.js文件。
此外,結尾的的script標籤使用反斜槓進行轉義: \/ */
window.jQuery || document.write('<script src = "js/index.js"><\/script>')緩存
//也可使用字符串拼接
// window.jQuery || document.write('<script src = "js/index.js"><' + '/script>')
</script>
</html>
============
====================================
script屬性
defer:加載完腳本後並不執行,而是等整個頁面加載完成以後再執行
<script defer url=''></script>服務器
ansyc:加載完成腳本後當即執行,不用等整個頁面都加載完,屬於異步執行
<script async url=''></script>
-------------------
<script type="text/javascript">
document.write("我愛你"+"<br/>");
</script>
<script type="text/javascript" src="text.js"></script>
------------
text.js的內容
document.write("這是引入外部的js文件");
------------
顯示:
我愛你
這是引入外部的js文件
============
defer 延遲,推遲 目前只支持ie瀏覽器,google chrome 不支持。
async 異步 非同步,便是多線程。加載頁面的同時也加載外部引入的文件。如:js css 等文件。
<script defer="defer" type="text/javascript" src="text1.js"></script>
defer="defer" 加載完全部文檔後,再加載該引入的文件。目前只支持IE瀏覽器,兼容性很差。
因此想要後面加載,那麼就把該句代碼放在</body>以前。
<script async="async" type="text/javascript" src="text2.js"></script>
async="async" 加載網頁文檔時,加載到該句代碼時,和網頁結構同時開始一塊兒加載外部引入文件。
該屬性支持全部主流瀏覽器。
---------------------------------
A:<script> 標籤用於定義客戶端腳本;
B:<style> 標籤用於爲 HTML 文檔定義樣式信息;
C:<meta> 標籤的屬性定義了與文檔相關聯的名稱/值對;
D:<title> 元素可定義文檔的標題;
A:src規定外部腳本文件的 URL;
B:async屬性規定對腳本進行異步加載,實現JavaScript雙線程加載;
C:type指示腳本的 MIME 類型;
D:defer規定是否對腳本執行進行延遲,直到頁面加載爲止;