三水朝山
2016-05-20 11:35
window.onunload = onunload_message; 前半部分的语句是固定的吗?后面是调用函数?不用加
()可以直接调用?
window.onunload = onunload_message();这种写法在程序运行到这句时,先执行onunload_message();函数,然后将test的返回值赋给window.onunload,这样的赋值毫无意义。
window.onunload = onunload_message;这种写法是在网页卸载完成后,调用onunload_message()方法
function onunload_message() {return "返回值" ; } window.onbeforeunload = onunload_message(); alert(window.onbeforeonload);
我们的这个window.onbeforeunload = onunload_message;如果最后不加()就是我们要的JS事件触发后,执行右边函数。
如果加了(),意思就是将右边这个函数的返回值赋值给左边的window.onbeforeunload。所以页面一开始就会执行右边的代码将这个值算出来。我的代码后边加了alert,将这个值显示出来证明了我的说法。
JavaScript进阶篇
468061 学习 · 21891 问题
相似问题