首页 > 解决方案 > 我可以将 JS 脚本放在页脚上方而不是标签之前的页脚下方吗

问题描述

我有一个用 django 构建的网站。

问题:我们目前有超过 50 个页面,并且每个页面上的页脚 HTML 代码完全相同。在向页脚添加一些更改时,我已经厌倦了必须编辑所有这些页面。

可能的解决方案:直接在 django 基本页面中插入页脚。

潜在问题:如果我在基本页面中插入页脚,页脚和标签之间的所有单独的 JS 脚本都会丢失 - 显然这些脚本是特定于页面的。那么我可以在页脚之前有特定的 JS 脚本吗?这将允许页脚轻松轻松地进入基础,但我不确定我能做到这一点。在页脚之前移动脚本会出错吗?

谢谢

标签: javascriptpythonhtmldjango

解决方案


是的,您可以在 HTML 页脚上方放置脚本。这有一个潜在的缺点,即您必须等待脚本被获取并运行,然后才能呈现页脚 HTML - 但除非您的脚本非常大,否则这不太可能成为问题。

但是,有一个简单的解决方案可以避免这种情况。在基本模板的底部有这样的东西

    <!-- footer HTML -->
    {% block page_js %}{% endblock %}
    </body>
</html>

然后在每个单独的页面中,您可以包含类似这样的内容(根据需要使用尽可能多的页面和/或外部加载的脚本):

{% block page_js %}
<script>// some custom JS for this page only</script>
<script src="js/for/this/page.js"></script>
{% endblock %}

推荐阅读