HTML 腳本標籤來包含和執行 JavaScript 程式碼。預設情況下,此標記採用外部來源屬性,例如 scr 來載入 JavaScript 檔案。但是,嘗試在腳本標記中包含內聯 JavaScript,如下所示:
<script src="myFile.js"> alert( "This is a test" ); </script>
靜默失敗而不拋出錯誤。
出現此行為的原因是腳本元素只能載入單一來源,無論是外部來源還是內聯來源。當 src 和內聯內容同時存在時,內聯內容將被忽略。因此:
<script src="script/addScript.js"> addScript( "script/obj.js" ); addScript( "script/home/login.js" ); </script>
不會載入指定的腳本。
要載入多個腳本,您需要為每個腳本使用單獨的腳本元素:
<script src="script/obj.js"></script> <script src="script/home/login.js"></script>
或者,您可以建立一個動態載入必要腳本的父腳本:
<script> var scripts = ["script/obj.js", "script/home/login.js"]; for (var i = 0; i < scripts.length; i++) { var script = document.createElement("script"); script.src = scripts[i]; document.head.appendChild(script); } </script>
雖然腳本元素中會忽略內聯JavaScript對於外部來源,腳本元素的內容保留在DOM 中。這促使一些開發人員使用它來儲存外部腳本存取的資料。然而,為此目的,使用 data-* 屬性通常是更合適、更簡潔的方法。
以上是為什麼內嵌 JavaScript 無法在具有外部來源的腳本標籤中運作?的詳細內容。更多資訊請關注PHP中文網其他相關文章!