4 回答

TA貢獻2039條經驗 獲得超8個贊
發生這種情況的原因是因為您的 js 文件是在頁面頭部調用的。
正因為如此,當你document.getElementsByClassName('collapsible');
,colls
導致一個空數組,因為你在 body 中的元素還沒有創建。
您可以創建一個單獨的 js 文件并將其添加到正文的末尾(這樣您可以確保在執行 javascript 時創建您的 colls),或者只是將您的代碼包裝在DOMContentLoaded
將觸發您的代碼一次的事件偵聽器上文檔已完全加載。

TA貢獻1773條經驗 獲得超3個贊
我的猜測是您在瀏覽器完成加載dom內容之前加載腳本,因此當它運行它試圖添加事件偵聽器的元素時,還不存在。
嘗試將所有 javascript 包裝在該文件中:
document.addEventListener("DOMContentLoaded", function(event) {
// all your code goes here
});
以上確保您的腳本在加載頁面上的所有元素后運行。

TA貢獻2012條經驗 獲得超12個贊
您可以在 HTML 文件的標題中添加一個腳本標簽,這會將 JS 文件導入當前頁面,如下所示 然后在按鈕或頁面的另一個腳本(通常在底部)中<script src="File1.js" type="text/javascript"></script> 調用該函數。onclick像這樣的東西:
<body>
...
<script type="text/javascript">
functionFromFile1()
</script>
</body>

TA貢獻1830條經驗 獲得超9個贊
由于缺少變量,您的腳本似乎無法正常執行。
在此腳本中https://www.argentina-fly.com/js/scripts.jsNaves
函數UpdateDetailsDestination()
中的變量未定義。
我認為你應該先解決這個問題,然后檢查你的進一步代碼是否正常工作。運行頁面時請查看控制臺。您將在那里看到所有與 JavaScript 相關的錯誤。
添加回答
舉報