我尝试在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>
答案 0 :(得分:0)
我在<html>
标记之前加载了静态。我使用{% load static %}
代替{% load staticfiles %}
它对我有用而没有任何麻烦。
答案 1 :(得分:0)
这与Django模板或外部文件无关。
HTML页面并不神奇;浏览器只是按顺序解释它们。如果脚本包含在文档的顶部,则它不能立即对DOM中的元素执行操作,因为DOM尚未加载。这就是为什么jQuery包含一种延迟执行的方法,直到DOM准备就绪:
$(document).ready(function() {
... code here ...
});
答案 2 :(得分:0)
将此行移至模板顶部:
{% load staticfiles %}
在<html>
和<head>
标记之前。