使用django模板引用外部文件

时间:2014-10-16 12:26:37

标签: javascript python css django

我尝试在django模板的head标签中包含Javascript和CSS的外部文件,但它们不起作用。当我在关闭body标签之前把它们放好时,它们运行良好。为什么?另一个问题是当我使用继承时,孩子们看不到我的外部文件。请有人帮帮我吗?

<head>
{% load staticfiles %}
    <link rel = "stylesheet" type = "text/css" href = "{%static 'postare/style.css' %}"/>
    <link type = "text/css" href = "{% static 'postare/css/bootstrap.min.css'%}" rel = "stylesheet"/>

    <script type = "text/javascript" src = "{% static 'postare/js/bootstrap.min.js' %}"></script>
    <script type = "text/javascript" src = "{% static 'postare/jquery.js' %}"></script>
    <script type = "text/javascript" src = "{% static 'postare/scripts.js' %}"></script>
</head>

3 个答案:

答案 0 :(得分:0)

我在<html>标记之前加载了静态。我使用{% load static %}代替{% load staticfiles %} 它对我有用而没有任何麻烦。

答案 1 :(得分:0)

这与Django模板或外部文件无关。

HTML页面并不神奇;浏览器只是按顺序解释它们。如果脚本包含在文档的顶部,则它不能立即对DOM中的元素执行操作,因为DOM尚未加载。这就是为什么jQuery包含一种延迟执行的方法,直到DOM准备就绪:

$(document).ready(function() {
    ... code here ... 
});

请参阅jQuery documentation

答案 2 :(得分:0)

将此行移至模板顶部:

{% load staticfiles %}

<html><head>标记之前。