假设我们有以下页面:
<html>
<head>
</head>
<body>
<script src="jQuery.js"></script>
<script src="myFile.js"></script>
<script>
$(document).ready(function() {
test();
});
</script>
</body>
</html>
myFile.js看起来像这样:
$(document).ready(function() {
function test() {
alert('Hello World!');
}
});
然后console.log将输出以下错误:
Uncaught ReferenceError: test is not defined
我宁愿不在<head>
中包含我的.JS文件(我认为这样可以解决问题)因为在HTML页面的页脚之后加载它会更加干净。
有关如何等待test();
运行,直到加载myFile.js
的任何想法?
答案 0 :(得分:2)
如果要在其他地方使用它,则需要在全局范围内定义test
。此外,如果代码位于页脚中,则无需等待文档准备就绪。
//$(document).ready(function() {
function test() {
alert('Hello World!');
}
// add it to global scope
// window.test = test;
//});
和
<script>
//$(document).ready(function() {
test();
//});
</script>