Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/382.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript “onbeforeunload”在窗口加载后立即激发。只发生在狩猎13_Javascript_Web_Safari - Fatal编程技术网

Javascript “onbeforeunload”在窗口加载后立即激发。只发生在狩猎13

Javascript “onbeforeunload”在窗口加载后立即激发。只发生在狩猎13,javascript,web,safari,Javascript,Web,Safari,在打开和关闭弹出窗口时,尝试启动一个函数以切换safari上的覆盖 var newWindow = null; function offOverlay() { document.getElementById("overlay").style.display = "none"; } function onOverlay() { document.getElementById("overlay").style.display = "block"; } function myFu

在打开和关闭弹出窗口时,尝试启动一个函数以切换safari上的覆盖

var newWindow = null;

function offOverlay() {
    document.getElementById("overlay").style.display = "none";
}

function onOverlay() {
    document.getElementById("overlay").style.display = "block";
}

function myFunction() {
    newWindow = win.open(url, title, 'toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=no, resizable=no, copyhistory=no, width='+w+', height='+h+', top='+y+', left='+x);
    onOverlay();
    newWindow.onbeforeunload = offOverlay;
}

因此,通过一个按钮,它将启动myFunction()以打开一个弹出窗口,然后它将切换到overlay div,并向newWindow添加一个事件侦听器以关闭overlay onbeforeunload事件。我在chrome、firefox、safari上测试了它,但只有safari给了我一个问题,当加载newWindow时,它会立即触发offOverlay


尝试使用onunload,但它给了我同样的问题。不确定是什么原因造成的。

您缺少
myFunction
中的参数列表。这是一个输入错误,我编辑了它,我的错。那么您认为这可能是什么原因造成的呢?只是一个猜测,但可能它首先加载
about:blank
,然后加载提供的URL,因此卸载空窗口会触发事件。参数列表不应该类似于
function myFunction(URL,title,w,h,y,x)