Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/428.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/3/html/83.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 更新窗口时不会触发已注册事件onunload_Javascript_Html_Javascript Events - Fatal编程技术网

Javascript 更新窗口时不会触发已注册事件onunload

Javascript 更新窗口时不会触发已注册事件onunload,javascript,html,javascript-events,Javascript,Html,Javascript Events,我的以下代码已经在运行: popups[uuid] = window.open(url, popupConf[type].target, popupConf[type].string); popups[uuid].focus(); $(popups[uuid]).load(function() { $(popups[uuid]).unload(function() { Stream.video.stop(uuid); }); }); 我在函数Stream.vid

我的以下代码已经在运行:

popups[uuid] = window.open(url, popupConf[type].target, popupConf[type].string);
popups[uuid].focus();
$(popups[uuid]).load(function() {
    $(popups[uuid]).unload(function() {
        Stream.video.stop(uuid);
    });
});
我在函数
Stream.video.play(url,popupConf)中有它。一切正常,但问题是如果我这样做:

Stream.video.play('a',{ /* conf */});
然后

Stream.video.play('a',{ /* conf */});
再说一次,它没有发挥应有的作用。。。它只执行一次事件卸载

代码的两次执行都有相同的目标,因此窗口会按其应该的方式更新。这一点很重要,因为我会在窗口打开后注册其他内容,而在卸载窗口(即关闭或其中的数据更改)后,这些内容应该取消注册

提前感谢你的帮助

编辑1:这就是我遇到的问题:

<a id="click">Click me</a><br />
<a id="otherClick">Click me</a>

$(function() {
    var myWindow;
    $('#click, #otherClick').click(function() {
        myWindow = window.open("about:blank","test","resizable=0,location=0,toolbar=0,height=150,width=150");
        $(myWindow).load(function() {
            $(myWindow).unload(function() {
                alert("closed");
            });
        });
    });
});

你的两个孩子这。。。然后语句是相同的?@JaredFarrish Yeap,只是内部创建的uuid不同。但是,如果点击的按钮是相同的,或者是其他的,那么应该是相同的。。。问题是事件没有执行两次。也就是说:一旦我点击第二个链接(或执行第二行“then”行),卸载事件就会被触发,但一旦我关闭该窗口,第二个事件就不会被触发…@JaredFarrish查看我的更新:换句话说,当你点击第一个链接时,保持窗口打开,然后点击第二个链接,除非窗口本身关闭,否则不会触发任何
unload
。@JaredFarrish问题是,窗口关闭时不会触发。。。你看我的例子了吗?按照以下步骤操作:单击第一个链接,单击第二个链接(它将触发
onunload
事件),再次单击任何链接或关闭窗口,它将再次触发相同的事件,但不会发生。。。