在HTML中使用JavaScript實(shí)例代碼這篇文章主要介紹了在HTML中使用JavaScript實(shí)例代碼,需要的朋友可以參考下。 <script>標(biāo)簽 在HTML5中script主要有以下幾個(gè)屬性:async,defer,charset,src,type, · async(可選): 關(guān)鍵詞:異步腳本,外部文件,立即下載; 當(dāng)標(biāo)簽中包含這個(gè)屬性時(shí)會(huì)立即下載腳本(外部文件),只對外部腳本文件有效,下載的同時(shí)可以進(jìn)行頁面的其他操作,下載完成后停止解析并執(zhí)行,執(zhí)行后繼續(xù)進(jìn)行解析,但不能保證執(zhí)行順序。 <script src="js/index2.js" async="async"></script> · defer(可選): 關(guān)鍵詞:延遲腳本,外部文件,延遲加載; 當(dāng)標(biāo)簽中包含這個(gè)屬性時(shí),腳本可以再等到頁面完全被解析或顯示之后執(zhí)行,只對外部文件有效,如果同時(shí)存在兩個(gè)帶有defer的腳本,由于延遲的原因,前者將會(huì)有限于后者執(zhí)行。 <script src="js/index1.js" defer="defer"></script> · charset(可選): 關(guān)鍵詞:字符集 大多數(shù)瀏覽器已經(jīng)忽略它的值了,所以很少有人使用。 · src(可選): 關(guān)鍵詞:外部引用 表示需要引用的外部文件的地址。 · type(可選): 關(guān)鍵詞:MIME(腳本語言的內(nèi)容類型) 為保證最大限度的瀏覽器兼容,type的屬性值主要時(shí)候用的依舊是text/javascript,如果沒有寫這個(gè)屬性,其默認(rèn)值仍然為text/javascript。 注意:在引用外部文件,標(biāo)簽中不要加入其它JS代碼,瀏覽器在解析時(shí),只會(huì)下載src引用的外部腳本文件,表中內(nèi)嵌入的代碼將會(huì)被忽略。 <script>標(biāo)簽的位置 通常,我們會(huì)把帶有外部文件的的標(biāo)簽(包括CSS文件,JavaScript文件)的引用放在相同的位置,一般是在<head>標(biāo)簽里面。 但是在解析過程中一旦遇到多個(gè)JavaScript外部文件,就要等到所有的外部文件加載完成后,頁面才能完全顯示,所以通常我們會(huì)把它放在<body>標(biāo)簽里的底部。 在上面中提到過<script>中有defer這個(gè)屬性,但是由于在HTML5中提到過,HTML5會(huì)忽略嵌入腳本所設(shè)置defer屬性,目前只有IE4~IE7還支持defer屬性,IE8以后完全遵循HTML5的標(biāo)準(zhǔn),所以把<script>放在<body>標(biāo)簽里的底部依舊是最佳選擇。 引用外部文件的優(yōu)點(diǎn) · 利于維護(hù):把所有的JavaScript的文件放在一起,不僅可以不觸及HTML代碼,而且更有利于開發(fā)者進(jìn)行代碼的編寫和維護(hù)。 · 加速瀏覽:如果有多個(gè)HTML頁面引用了同一個(gè)JavaScript外部文件,這個(gè)文件只會(huì)加載一次(緩存),也就是說可以加快頁面的加載速度。 · 安全性:引用外部文件,如果用戶查看HTML代碼,將不會(huì)看到JavaScript的代碼,比寫在標(biāo)簽內(nèi)安全性更高一些。 <noscript>標(biāo)簽 字面意思,NO-script,沒有script,也就是瀏覽器不支持JavaScript時(shí),<noscript>標(biāo)簽中內(nèi)容才會(huì)被顯示, · 瀏覽器不支持腳本; · 瀏覽器支持腳本,但是JavaScript被禁用; 以上兩條符合任何一個(gè),<noscript>標(biāo)簽內(nèi)的內(nèi)容都會(huì)被顯示。 上圖頁面,給用戶了一個(gè)信息,當(dāng)瀏覽器不支持或禁用JavaScript是才會(huì)被顯示,否則用戶將永遠(yuǎn)不會(huì)看到,并且不會(huì)影響頁面其他元素的顯示。 |
|