1、在<script></script>中包含JavaScript代碼。
2、使用<script>標(biāo)簽的src屬性引入外部javaScript文件,JavaScript文件可以來(lái)自外域也可以是同域。如果script標(biāo)簽包含src屬性,那么script標(biāo)簽中的內(nèi)容會(huì)被忽律。
html文檔中JavaScript執(zhí)行順序是按照他們?cè)谖臋n中的順序執(zhí)行的。
1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>Document</title> 6 <script> 7 console.log("aaa"); 8 </script> 9 <script>10 console.log("hello world");11 </script>12 </head>13 <body>14 15 </body>16 </html>
控制臺(tái)中會(huì)先輸出aaa,在輸出hello world.
html文檔中script標(biāo)簽的位置可以在head標(biāo)簽中,也可以在body標(biāo)簽中。當(dāng)script標(biāo)簽在head中時(shí),會(huì)先執(zhí)行JavaScript代碼,再加載文檔的內(nèi)容,如果script標(biāo)簽在body標(biāo)簽中,會(huì)先加載文檔內(nèi)容,再執(zhí)行JavaScript代碼。
script標(biāo)簽的defer和aynsc屬性只對(duì)外部腳本有效。
<script>標(biāo)簽定義了defer屬性。這個(gè)屬性的用途是表明腳本在執(zhí)行時(shí)不會(huì)影響頁(yè)面的構(gòu)造。腳本會(huì)被延遲到整個(gè)頁(yè)面都解析完畢后再運(yùn)行。
1 <!DOCTYPE html> 2 <html> 3 <head> 4 <title>Example HTML Page</title> 5 <script type="text/javascript" defer="defer" src="example1.js"></script> 6 7 <script type="text/javascript" defer="defer" src="example2.js"></script> 8 9 </head>10 <body> 11 <!-- 這里放內(nèi)容 --> </body>12 </html>
我們把<script>元素放在了文檔的<head>元素中,但其中包含的腳本將延遲到瀏覽器遇到</html>標(biāo)簽后再執(zhí)行。HTML5規(guī)范要求腳本按照它們出現(xiàn)的先后順序執(zhí)行,因此第一個(gè)延遲腳本會(huì)先于第二個(gè)延遲腳本執(zhí)行,而這兩個(gè)腳本會(huì)先于DOMContentLoaded事件執(zhí)行。
<script>標(biāo)簽定義了aysnc屬性。腳本執(zhí)行和文檔內(nèi)容渲染之間異步(同時(shí))執(zhí)行,所以不要在腳本中修改dom。腳本會(huì)在Load時(shí)間之前執(zhí)行,在DOMContentLoaded之前或者之后執(zhí)行。腳本之間的順序不可保證,所以腳本之間不要有依賴關(guān)系.
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title> <script src="example1.js" async="async"></script> <script src="example2.js" async="async"></script></head><body></body></html>
1.代碼可維護(hù)性好。html和JavaScript代碼分離,內(nèi)容清晰,如果需要修改JavaScript,只需要在單獨(dú)的文件中修改即可。
2.瀏覽器緩存,同一個(gè)頁(yè)面多次加載時(shí),外部的JavaScript文件會(huì)在瀏覽器緩存。
該標(biāo)簽可以出現(xiàn)在body標(biāo)簽中的任何位置,包含在<noscript>元素中的內(nèi)容只有在下列情況下才會(huì)顯示出來(lái):
1.瀏覽器不支持腳本;
2.瀏覽器支持腳本,但腳本被禁用。
1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>Title</title> 6 <script src="example1.js" async="async"></script> 7 <script src="example2.html" async="async"></script> 8 </head> 9 <body>10 <noscript>11 <p>當(dāng)前瀏覽不支持或者禁用了javascript</p>12 </noscript>13 </body>14 </html>
需要在瀏覽器中禁用JavaScript,然后在運(yùn)行代碼。
聯(lián)系客服