jscript onopen事件无法调用函数

时间:2014-11-30 10:14:35

标签: javascript

我想在浏览器打开(或重新加载)时调用一个函数

如果我使用:

window.onopen = window.alert("opened");

但是工作正常:

window.onopen = winopen; 
window.onresize = winopen;

function winopen()
{
    alert("opened");
}

没有。 window.onresize调用执行工作,我也使用resize事件来调用另一个函数,但是把它放在这里只是为了测试函数调用是否有效,因为我调整了大小事件函数调用在别处工作。

1 个答案:

答案 0 :(得分:0)

那是因为你误解了一个基本的东西:

window.onopen = window.alert("opened");

正在为window.onopen分配调用window.alert("opened")的结果,无论如何都会调用该函数。

第二种方式是分配函数的正确方法,但没有onopen这样的事件。

如果你想在每个页面加载时调用一个函数,只需在你的.js文件中调用它而不需要任何其他内容。每次加载页面时都会解析并执行该文件。

基本上,你想要:

window.onresize = winopen;

function winopen()
{
    alert("opened");
}
winopen(); //Call it now.

在某些情况下,您可能希望DOM完成加载(所有HTML都已解析,浏览器已准备好进行DOM操作),在这种情况下,您可以使用window.onload代替window.onopen你的榜样。