gpt4 book ai didi

javascript - window.onload 没有全局变量

转载 作者:数据小太阳 更新时间:2023-10-29 05:22:41 26 4
gpt4 key购买 nike

我正在尝试使用没有全局变量的 windows.load。

HTML代码:

<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title>Test</title>
<link rel="stylesheet" href="main.css">
<script type="text/javascript" src="script.js"></script>
</head>
<body>

<form>
Name: <input type="text" id="txt1"><br><br>
<input type="button" value="Check Input" id="b1">
</form>

</body>
</html>

JavaScript 全局变量代码:

/*jslint browser: true*/

var myButton;

window.onload = function () {
"use strict";
myButton = document.getElementById("b1");
myButton.addEventListener("click",alertMM);
};

function alertMM() {
"use strict";
window.console.log(myButton.value);
}

最后是没有全局变量代码的 NOT WORKING:

/*jslint browser: true*/

var myNS = {
myButton: undefined,
//
setUp: function () {
"use strict";
myNS.myButton = document.getElementById("b1");
myNS.myButton.addEventListener("click", alertMM);
}
};

window.onload = myNS.setUp();

function alertMM() {
"use strict";
window.console.log(myNS.myButton.value);
}

我想停止使用全局变量的原因是我担心它会与以后的代码冲突。

提前致谢

阿德里安

最佳答案

在:

window.onload = myNS.setUp();

当您定义 window.onload 回调时,您应该为它分配函数本身(只是 myNS.setUp)以便稍后调用它。您的代码所做的是立即调用该函数并分配结果。

关于javascript - window.onload 没有全局变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29717833/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com