【发布时间】:2015-01-10 16:47:37
【问题描述】:
当我有 test.js 文件并使用以下命令导入脚本时:
<script defer="defer" src="/js/test.js"></script>
一切正常...但是如果我将上面的 html 行更改为:
<script defer="defer">
$(document).ready(function () {
$(".overviewPilotPortraitImage").click(function () {
alert("Hello world!");
});
});
</script>
它不再起作用了。 test.js 包含与上面完全相同的脚本,只是没有脚本标签。
是的,我确定它完全一样。
带有 test.js 文件的头标签 - 工作:
<head>
<title>Placeholder - Overview</title>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<link rel="stylesheet" type="text/css" href="/css/bootstrap.min.css" />
<link rel="stylesheet" type="text/css" href="/css/style.css" />
<script defer="defer" src="/js/jquery-1.11.1.min.js"></script>
<script defer="defer" src="/js/bootstrap.min.js"></script>
<script defer="defer" src="/js/test.js"></script>
</head>
html 中带有脚本的头部标签 - 不工作:
<head>
<title>Placeholder - Overview</title>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<link rel="stylesheet" type="text/css" href="/css/bootstrap.min.css" />
<link rel="stylesheet" type="text/css" href="/css/style.css" />
<script defer="defer" src="/js/jquery-1.11.1.min.js"></script>
<script defer="defer" src="/js/bootstrap.min.js"></script>
<script defer="defer">
$(document).ready(function () {
$(".overviewPilotPortraitImage").click(function () {
alert("Hello world!");
});
});
</script>
</head>
首先,我认为脚本是在 Jquery 之前以某种方式加载的,但它没有意义,因为文件导入工作正常。有什么想法吗?
【问题讨论】:
-
尝试删除您的 defer 属性,它可能会阻止脚本运行。
-
好奇你遇到了什么错误,我从不使用
defer
标签: javascript jquery xhtml