【发布时间】:2019-04-29 21:37:08
【问题描述】:
不确定这里发生了什么。似乎 jQuery 没有从 base.html 文件“扩展”到外部文件。
我有:
#base.html
<!doctype html>
<html class="no-js" lang="en">
<head>
...
... # css imports
</head>
<body>
# some fixed stuff
{% block body %}
# some stuff specific to base.html
{% endblock %}
# js imports at the end of the body
<script src="static/js/jquery-3.1.0.min.js"></script>
... # various other js
</body>
</html>
然后我有另一个html文件:
#test.html
{% extends "base.html" %}
{% block body %}
# some stuff
<script type="text/javascript">
$(document).ready( function () {
alert("foo")
} );
</script>
{% endblock %}
现在,我没有收到任何警报。但是,如果我使用纯 javascript,它会按预期工作。
我注意到如果我在 test.html 中再次导入 jQuery,jQuery 可以正常工作。但那扩展的意义何在?
一定有我遗漏的东西。顺便说一句,这似乎只发生在 jQuery 上,所有其他 javascript 库似乎都可以很好地扩展。
【问题讨论】:
-
你试过在body块之前导入jQuery吗?
-
@MiniGunnR 好电话!例如,如果我将它放在头部,它似乎确实有效。如果您足够关心解释原因并将其作为答案发布,我将很乐意接受。
-
很高兴它成功了。我写了一个答案。
标签: javascript python jquery html flask