脚本不是从外部文件执行的
Script is not executing from external file
几个小时以来,我一直被一个非常愚蠢和神秘的问题所困扰。 JQuery 在 <script></script>
之间有效,但在从外部文件调用时无效。我一定是犯了一个愚蠢的错误,但是在哪里??
我的 HTML 中有这个(标准 bootstrap 导入,您会注意到):
<!-- Bootstrap core JavaScript
================================================== -->
<!-- Placed at the end of the document so the pages load faster -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<script src="../static/js/bootstrap.min.js"></script>
<script src="../../assets/js/docs.min.js"></script>
<!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
<script src="../../assets/js/ie10-viewport-bug-workaround.js"></script>
<!-- Custom JavaScript
================================================== -->
<div class="col-xs-4">
<div id="my_camera"></div>
<div id="send-button"></div>
</div>
...
现在,如果我直接在文件内编码,如下所示,Title
会按预期显示:
<!-- Custom JavaScript
================================================== -->
<script>$(function() {
$( "#Title" ).append( '<h1 class="text-capitalize">Title</h1>' );
});
</script>
<div class="col-xs-4">
<div id="my_camera"></div>
<div id="Title"></div>
</div>
但是,如果我将 相同的 代码放入 custom.js
,则不会显示任何内容。这里是custom.js
内容:
$(function() {
$( "#Title" ).append( '<h1 class="text-capitalize">Title</h1>' );
});
和修改后的HTML:
<!-- Bootstrap core JavaScript
================================================== -->
<!-- Placed at the end of the document so the pages load faster -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<script src="../static/js/bootstrap.min.js"></script>
<script src="../../assets/js/docs.min.js"></script>
<!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
<script src="../../assets/js/ie10-viewport-bug-workaround.js"></script>
<!-- Custom JavaScript
================================================== -->
<script src="custom.js"></script>
<div class="col-xs-4">
<div id="my_camera"></div>
<div id="Title"></div>
</div>
也许您的 JS 在 HTML 呈现之前被调用。尝试将其包装在就绪函数中。
$(document).ready(function(){
$( "#Title" ).append( '<h1 class="text-capitalize">Title</h1>' );
});
这个问题似乎实际上与Jquery没有任何关系。我正在使用 Flask python 框架,似乎我无法设置 static
以外目录的路径。因此,应用程序看不到 static
之外的任何内容。
<!-- Bootstrap core JavaScript
================================================== -->
<!-- Placed at the end of the document so the pages load faster -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<script src="../static/js/bootstrap.min.js"></script>
<script src="../../assets/js/docs.min.js"></script>
<!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
<script src="../../assets/js/ie10-viewport-bug-workaround.js"></script>
<!-- Custom JavaScript
================================================== -->
<script src="../static/js/custom.js"></script>
custom.js内容:
$(document).ready(function () {
$( "#left-col" ).append( '<h1 class="text-capitalize">Title</h1>' );
});
几个小时以来,我一直被一个非常愚蠢和神秘的问题所困扰。 JQuery 在 <script></script>
之间有效,但在从外部文件调用时无效。我一定是犯了一个愚蠢的错误,但是在哪里??
我的 HTML 中有这个(标准 bootstrap 导入,您会注意到):
<!-- Bootstrap core JavaScript
================================================== -->
<!-- Placed at the end of the document so the pages load faster -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<script src="../static/js/bootstrap.min.js"></script>
<script src="../../assets/js/docs.min.js"></script>
<!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
<script src="../../assets/js/ie10-viewport-bug-workaround.js"></script>
<!-- Custom JavaScript
================================================== -->
<div class="col-xs-4">
<div id="my_camera"></div>
<div id="send-button"></div>
</div>
...
现在,如果我直接在文件内编码,如下所示,Title
会按预期显示:
<!-- Custom JavaScript
================================================== -->
<script>$(function() {
$( "#Title" ).append( '<h1 class="text-capitalize">Title</h1>' );
});
</script>
<div class="col-xs-4">
<div id="my_camera"></div>
<div id="Title"></div>
</div>
但是,如果我将 相同的 代码放入 custom.js
,则不会显示任何内容。这里是custom.js
内容:
$(function() {
$( "#Title" ).append( '<h1 class="text-capitalize">Title</h1>' );
});
和修改后的HTML:
<!-- Bootstrap core JavaScript
================================================== -->
<!-- Placed at the end of the document so the pages load faster -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<script src="../static/js/bootstrap.min.js"></script>
<script src="../../assets/js/docs.min.js"></script>
<!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
<script src="../../assets/js/ie10-viewport-bug-workaround.js"></script>
<!-- Custom JavaScript
================================================== -->
<script src="custom.js"></script>
<div class="col-xs-4">
<div id="my_camera"></div>
<div id="Title"></div>
</div>
也许您的 JS 在 HTML 呈现之前被调用。尝试将其包装在就绪函数中。
$(document).ready(function(){
$( "#Title" ).append( '<h1 class="text-capitalize">Title</h1>' );
});
这个问题似乎实际上与Jquery没有任何关系。我正在使用 Flask python 框架,似乎我无法设置 static
以外目录的路径。因此,应用程序看不到 static
之外的任何内容。
<!-- Bootstrap core JavaScript
================================================== -->
<!-- Placed at the end of the document so the pages load faster -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<script src="../static/js/bootstrap.min.js"></script>
<script src="../../assets/js/docs.min.js"></script>
<!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
<script src="../../assets/js/ie10-viewport-bug-workaround.js"></script>
<!-- Custom JavaScript
================================================== -->
<script src="../static/js/custom.js"></script>
custom.js内容:
$(document).ready(function () {
$( "#left-col" ).append( '<h1 class="text-capitalize">Title</h1>' );
});