更新時(shí)間:2020-11-13 來(lái)源:黑馬程序員 瀏覽量:
JavaScript腳本文件的引入方式和CSS樣式文件類似。在HTML文檔中引入JavaScript文件主要有三種,即行內(nèi)式、嵌入式、外鏈?zhǔn)?。接下?lái),我們將對(duì)JavaScript的三種引入方式做詳細(xì)講解。
1. 行內(nèi)式
行內(nèi)式是將JavaScript代碼作為HTML標(biāo)簽的屬性值使用。例如,單擊“test”時(shí),彈出一個(gè)警告框提示“Happy”,具體示例如下:
<a href="javascript:alert('Happy');"> test </a>JavaScript還可以寫在HTML標(biāo)簽的事件屬性中,事件是JavaScript中的一種機(jī)制。例如,單擊網(wǎng)頁(yè)中的一個(gè)按鈕時(shí),就會(huì)觸發(fā)按鈕的單擊事件,具體示例如下:
<input type="button" onclick="alert('Happy'); "value="test" >上述代碼實(shí)現(xiàn)了單擊“test”按鈕時(shí),彈出一個(gè)警告框提示“Happy”。
值得一提的是,網(wǎng)頁(yè)開(kāi)發(fā)提倡結(jié)構(gòu)、樣式、行為的分離,即分離HTML、CSS、JavaScript三部分的代碼。避免直接寫在HTML標(biāo)簽的屬性中,從而有利于維護(hù)。因此在實(shí)際開(kāi)發(fā)中并不推薦使用行內(nèi)式。
2. 嵌入式
在HTML中運(yùn)用<script>標(biāo)簽及其相關(guān)屬性可以嵌入JavaScript腳本代碼。嵌入JavaScript代碼的基本格式如下:
<script type="text/javascript"> JavaScript語(yǔ)句; </script>
<script> JavaScript語(yǔ)句;</script>
在上面的語(yǔ)法格式中,省略了type="text/JavaScript",這是因?yàn)樾掳姹镜臑g覽器一般將嵌入的腳本語(yǔ)言默認(rèn)為JavaScript,因此在編寫JavaScript代碼時(shí)可以省略type屬性。
JavaScript可以放在HTML中的任何位置,但放置的地方會(huì)對(duì) JavaScript腳本代碼的執(zhí)行順序會(huì)有一定影響。因此在實(shí)際工作中一般將JavaScript腳本代碼放置于HTML文檔的 <head></head> 標(biāo)簽之間。由于瀏覽器載入HTML 文檔的順序是從上到下,將JavaScript腳本代碼放置于<head></head> 標(biāo)簽之間,可以確保在使用腳本之前,JavaScript腳本代碼就已經(jīng)被載入,下面展示的就是一段放置了JavaScript的示例代碼。
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>嵌入式</title>
<script type=" text/javascript">
alert("我是JavaScript腳本代碼!")
</script>
</head>
<body>
</body>
</html>在上面的示例代碼中,<script>標(biāo)簽包裹的就是JavaScript腳本代碼。
3. 外鏈?zhǔn)?/p>
外鏈?zhǔn)绞菍⑺械腏avaScript代碼放在一個(gè)或多個(gè)以“.js”為擴(kuò)展名的外部JavaScript文件中,通過(guò)<src >標(biāo)簽將這些JavaScript文件鏈接到HTML文檔中,其基本語(yǔ)法格式如下:
<script type="text/Javascript" src="腳本文件路徑" > </script>
上述格式中,src是script標(biāo)簽的屬性,用于指定外部腳本文件的路徑。同樣的,在外鏈?zhǔn)降恼Z(yǔ)法格式中,我們也可以省略type屬性,將外鏈?zhǔn)降恼Z(yǔ)法簡(jiǎn)寫為:
<script src="腳本文件路徑 " > </script>
需要注意的是,調(diào)用外部JavaScript文件時(shí),外部的JavaScript文件中可以直接書寫JavaScript腳本代碼,不需要寫<script>引入標(biāo)簽。
在實(shí)際開(kāi)發(fā)中,當(dāng)需要編寫大量、邏輯復(fù)雜的JavaScript代碼時(shí),推薦使用外鏈?zhǔn)?。相比嵌入式,外鏈?zhǔn)降膬?yōu)勢(shì)可以總結(jié)為以下兩點(diǎn):
1) 利于后期修改和維護(hù)
嵌入式會(huì)導(dǎo)致HTML與JavaScript代碼混合在一起,不利用代碼的修改和維護(hù),外鏈?zhǔn)綍?huì)將HTML、CSS、JavaScript三部分代碼分離開(kāi)來(lái),利于后期的修改和維護(hù)。
2) 減輕文件體積、加快頁(yè)面加載速度
嵌入式會(huì)將使用的JavaScript代碼全部嵌入到HTML頁(yè)面中,這就會(huì)增加HTML文件的體積,影響網(wǎng)頁(yè)本身的加載速度,而外鏈?zhǔn)娇梢岳脼g覽器緩存,將需要多次用到的JavaScript腳本代碼重復(fù)利用,既減輕了文件的體積,也加快了頁(yè)面的加載速度。例如,在多個(gè)頁(yè)面中引入了相同的JavaScript文件時(shí),打開(kāi)第1個(gè)頁(yè)面后,瀏覽器就將JavaScript文件緩存下來(lái),下次打開(kāi)其他引用該JavaScript文件的頁(yè)面時(shí),瀏覽器就不用重新加載JavaScript文件了。
在上面的示例代碼中,直接省略掉var,通過(guò)賦值的方式聲明變量。需要注意的是。由于JavaScript采用的是動(dòng)態(tài)編譯,程序運(yùn)行時(shí)不容易發(fā)現(xiàn)代碼中的錯(cuò)誤,所以本書仍然推薦讀者使用顯式聲明變量的方法。
猜你喜歡:
怎樣HTML中創(chuàng)建超鏈接
表單的構(gòu)成是什么?如何創(chuàng)建表單
黑馬程序員前端培訓(xùn)課程
1024首播|39歲程序員逆襲記:不被年齡定義,AI浪潮里再迎春天
2025-10-241024程序員節(jié)丨10年同行,致敬用代碼改變世界的你
2025-10-24【AI設(shè)計(jì)】北京143期畢業(yè)僅36天,全員拿下高薪offer!黑馬AI設(shè)計(jì)連續(xù)6期100%高薪就業(yè)
2025-09-19【跨境電商運(yùn)營(yíng)】深圳跨境電商運(yùn)營(yíng)畢業(yè)22個(gè)工作日,就業(yè)率91%+,最高薪資達(dá)13500元
2025-09-19【AI運(yùn)維】鄭州運(yùn)維1期就業(yè)班,畢業(yè)14個(gè)工作日,班級(jí)93%同學(xué)已拿到Offer, 一線均薪資 1W+
2025-09-19【AI鴻蒙開(kāi)發(fā)】上海校區(qū)AI鴻蒙開(kāi)發(fā)4期5期,距離畢業(yè)21天,就業(yè)率91%,平均薪資14046元
2025-09-19