<head>
<script type="text/javascript" src="folder/externaljs.js">
</head>
<body onload="someFunctionInExternalJS();">
</body>
如何确保首先加载 externaljs.js 以便结果执行someFunctionInExternalJS()
?谢谢!
答案 0 :(得分:1)
外部javascript文件将在继续构建DOM之前加载并执行,除非它是异步(http://www.w3schools.com/tags/att_script_async.asp)。
DOM需要构建的任何外部文件(主要是javascript,css)将在解析时加载。这就是为什么你有时会在body标签的底部看到javascript而不是head。
答案 1 :(得分:1)
使用jquery,
$(document).ready(function() {
//anything in here will only be called/work when the document is ready.
//call your function in here, instead of bodyonload
});
答案 2 :(得分:0)
我测试了这段代码并且工作正常:
<!doctype html>
<html>
<head>
<script src="my_script.js"></script>
</head>
<body onload="my_function()">
</body>
</html>
在my_script.js中使用:
function my_function () {
alert("Hello world!");
}
另一个解决方案是在my_script.js中写这个:
function my_function () {
alert("Hello world!");
}
document.onload = my_function();