我正在使用 .load() 函数为我正在创建的网站加载页脚,因此我不必每次进行更改时都在每个网站页面上替换它。
我目前正在使用这段代码来加载它:
$('.footer_load').load('includes/footer.html footer');
但正如我从研究中发现的那样,这只会加载页脚页面的 HTML,而不会加载我可能已设计到页面中的任何脚本标记或动态内容。
例如,我在页脚上有一个自动更新版权年份的标签。
我可以在上面添加什么代码,不仅加载页脚的 html,还加载该页面中可能包含的任何和所有脚本和动态内容?
帮助!我搜索了高低,并尝试了几种代码,但无法使任何东西起作用,而且我不知道如何在 JQuery 的这一部分编写这个/新手来自己编写它。提前致谢!
最佳答案
为冗长的回答道歉。以下是您可能想要开始的方式。在您的示例中,您提到要加载新的页脚 HTML,然后执行一个脚本来操作已添加到 DOM 的数据;在您的情况下是版权。以下是我的做法:
将要执行的 Javascript 保留在新的页脚 HTML 文件之外。
// Load the new footer html
$("#footer").load("includes/footer.html", function() {
// Once HTML is loaded, call your script file that manipulates the data.
$.getScript("scripts/updateCopyRight.js");
});
现在,updateCopyRight.js 会是什么样子?也许是这样的:
// Self executing clojure
(function($) {
// Change the HTML data with the current year.
$("#SOME_ID_TO_BE_UPDATED").html(new Date().getFullYear())
})(window.jQuery)
这对您来说可能不是一个完美的解决方案,但我希望这可能会让您走上正确的道路。
关于javascript - .load() 不加载脚本标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19849889/