我有父窗口打开另一个窗口。在子窗口中,我试图将事件发送给开启者。我的代码看起来像这样:
export function taskClose(opener: string) {
if (!window.opener || window.opener === window || window.opener.closed) {
redirectToPath(opener);
return;
}
var updateEvent;
if (typeof(Event) === 'function') {
updateEvent = new Event('inboxNeedUpdate');
}else {
updateEvent = document.createEvent('CustomEvent');
updateEvent.initCustomEvent('inboxNeedUpdate', false, false, undefined);
}
window.opener.dispatchEvent(updateEvent);
window.close();}
我想知道如何正确地将事件发送到开启窗口。 此代码在Chrome和FF中正常运行。
答案 0 :(得分:1)
需要引用原始窗口,否则拒绝事件
window.opener.document.createEvent('CustomEvent');