[英]How to load an html file with <script> tag on a node js server?
[英]Getting script in .js file to load in HTML
我用javascript寫了一個簡單的版權腳本,經測試可以正常工作:
<!DOCTYPE html> <html> <body> <p id="footer"></p> <script type = "text/javascript"> var initialYear = 2016; var currentYear = new Date().getFullYear(); var yearYext = "null " if (initialYear == currentYear) { yearText = " " + initialYear + " "; } if (initialYear != currentYear) { yearText = " " + initialYear + " - " + currentYear; } var copyright = { name : "Elliander Eldridge", symbol : '\©', year : yearText, }; document.getElementById("footer").innerHTML = "Copyright " + copyright.symbol + " " + copyright.year + " " + copyright.name + ". All rights reserved."; </script> </body> </html>
(從運行按鈕可以看到)
因此,我將腳本部分移至js / site.js(在網站文件的目錄樹內),並希望將其加載到所有頁面的頁腳中。
問題是這兩個都不使用:
<script src="../js/site.js"></script>
也不是這樣:
<script src="../js/site.js">
<p id="footer"></p>
</script>
根本沒有做任何事情,而且我似乎根本找不到找到這種方法來加載的方法。 我也嘗試將其放在頁面的其他部分,但沒有成功。 我什至嘗試將其放在應該加載每個頁面的css文件中。
附帶說明一下,我希望能夠從該文件中加載多個腳本,類似於我可能在一個css文件中使用多個css類的方式,但是不確定如何在此處執行此操作。
PS-請不要建議我用JavaScript編寫此文字的其他方法。 我只需要幫助就可以加載已寫的內容。
甚至在加載HTML內容之前,您的js代碼就會在開始時被調用,並且它會嘗試查找footer
,而footer
顯然尚不存在於頁面上。
您只需要做的就是調用js,一旦DOM准備就緒即加載HTML
<p id="footer"></p>
...
...
// and at the end of the page
<script src="../js/site.js"> </script>
另一個提示可能會有所幫助。 將您的js代碼放在這周圍:
$(document).ready(function() {
//put your code here
});
哦,這也是不正確的
<script src="../js/site.js">
<p id="footer"></p>
</script>
編輯:
由於您不想使用jquery,請執行以下操作:
document.addEventListener('DOMContentLoaded', function() {
// put your code here
}, false);
這樣可以確保僅在加載DOM之后運行javascript代碼
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.