所以,我有这个HTML文档
<!DOCTYPE html>
<html>
<head>
<title>TestPage</title>
<script src="script.js"></script>
</head>
<body>
<p id="test">Sample text</p>
</body>
</html>
使用此JS文件
window.addEventListener("load", MyFunction());
function MyFunction(){
document.getElementById("test").innerHTML = "it worked";
}
并且当然这不起作用(文本没有改变),因为它在实际加载<p id="test"></p>
元素之前加载脚本(我认为)。这可能看起来很奇怪,但我希望在所有内容都加载后更改某些元素的内容。我搜索过,但无济于事。我可能在这里遗漏了一些明显的东西,但我似乎无法弄明白。任何建议将不胜感激!
答案 0 :(得分:4)
您正在设置“负载”事件中调用该功能。
你的意思是:
window.addEventListener("load", MyFunction);
...
答案 1 :(得分:0)
尝试:
window.onload = function () {
MyFunction()
}
function MyFunction(){
document.getElementById("test").innerHTML = "it worked";
}
答案 2 :(得分:-1)
只需将其添加到您的身体标签:
<body onload=myFunction()>
function myFunction(){
document.getElementById("test").innerHTML = "it worked";
}