以下两个JavaScript代码段代码之间有什么区别。他们的行为不同。
window.onload = function()
{
mainForm.onsubmit = function(e) {
alert("Submit");
}
}
和
window.onload = my_func();
function my_func() {
mainForm.onsubmit = function (e) {
alert("Submit");
}
}
使用以下HTML代码时。按下提交按钮后,我会从第一个片段收到“提交”消息,但第二个片段没有任何消息。
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="utf-8">
<title>JS Test</title>
<script src="test.js"></script>
</head>
<body>
<form method="get" action="" id="mainForm">
<input type="submit">
</form>
</body>
</html>
提前谢谢。
答案 0 :(得分:2)
试试这个
window.onload = my_func;
这有很大的不同。
window.onload = stuff()
将调用stuff
函数并将其返回值分配给onload
属性。
window.onload = stuff
将stuff
函数分配给属性onload
。当load事件发生时,浏览器将调用该函数。功能是对象。当你用他们的名字引用他们而不打电话给他们时,你就是指这个对象。这类似于&#34;函数指针&#34;你在谈论
参考: Is there a difference between window.onload = stuff and window.onload = stuff()?