簡體   English   中英

外部.js文件無法獲取頁面元素?

[英]External .js file can't get the page element?

我有一個HTML頁面,以及一個單獨的.js文件,該文件包含在頁面中並帶有<script src="...">標記。

這是我的.js文件:

element = document.getElementById("test");
function sayTest() {
    alert(element.innerHTML);
}

當我將此代碼放在html頁面的<script>標記中時,它可以正常工作。 當我將此代碼放置在外部.js文件中,並將其包含在<script src="...">標記中時,它將不起作用。

為什么第二種方法不起作用,我該如何解決?

Javascript可能在DOM加載所有內容之前運行。

您應該能夠包裝它,以便它在DOM加載后運行。

 document.addEventListener("DOMContentLoaded", function(event) { element = document.getElementById("test"); function sayTest() { alert(element.innerHTML); } }); 

您實際在哪里調用sayTest函數? 如果我運行以下命令,它將正常工作

 element = document.getElementById("test"); function sayTest() { alert(element.innerHTML); } sayTest(); 

有了您所提供的信息。 以下應該工作。

index.html文件

 <!DOCTYPE html> <html> <body> <button onclick="sayTest()">Click Me!</button> <p id="test">Hello World!</p> <script src="script.js" ></script> </body> </html> 

script.js文件

 element = document.getElementById("test"); function sayTest() { alert(element.innerHTML); } 

嘗試像這樣使用:可能是您在exeterna.js中使用了某個元素。 檢查您要添加的文件路徑,並查看文件添加是否正確。

function sayTest() {
var element = document.getElementById("test");
    alert(element.innerHTML);
}

call sayTest() onclick.

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM