所以问题是,在
window.onload = someFunctionName和window.onload = someFunctionName(),我应该使用这个括号吗?
发布于 2013-12-25 10:56:59
window.onload = someFunctionName();将调用为someFunctionName函数,将其返回值分配给onload属性。
window.onload = someFunctionName;将someFunctionName函数分配给属性onload。当发生load事件时,浏览器将调用该函数。函数是对象。当你用他们的名字而不叫他们时,你指的是这个对象。
示例:
window.onload = test();
function test() {
alert("outer");
return function(){
alert("inner");
}
}这将在调用test()时发出两次警报,它将发出外部警报,并返回内部函数以加载和加载,它将在内部发出警报。
而
window.onload = test;
function test() {
alert("outer");
return function(){
alert("inner");
}
}上面的代码只会在外部发出警报,因为内部函数返回了,但从未被调用。
这是小提琴
发布于 2013-12-25 10:52:56
这里有一个很好的规范:https://developer.mozilla.org/en-US/docs/Web/API/GlobalEventHandlers.onload
设置它有几种方法:1.JavaScript,这需要将它设置为一个函数。2.通过HTML标记将其设置为字符串值。
这两者的例子都是有效的方法。我建议Javascript直接传递函数引用:onload.asp
发布于 2013-12-25 10:51:26
window.onload = someFunction; -将someFunction分配给onload事件
window.onload = someFunction(); -将someFunction的结果分配给onload事件。
https://stackoverflow.com/questions/20771922
复制相似问题