当用户导航离开当前网址时,我试图触发一个弹出窗口。
window.open似乎只在safari iOS上返回null,其他浏览器(桌面和移动设备)似乎工作正常,因为弹出窗口阻止程序不活动。
这是一个已知的问题?如果有,可以在pagehide
,unload
或beforeunload
事件上获取弹出窗口吗?
window.addEventListener('pagehide', function () {
// window.open("https://www.google.com", "_blank", "toolbar=yes,scrollbars=yes,resizable=yes,top=500,left=500,width=400,height=400");
var myWindow = window.open("", "");
myWindow.document.body.innerHTML = "pagehide";
});
window.addEventListener('unload', function () {
// window.open("https://www.google.com", "_blank", "toolbar=yes,scrollbars=yes,resizable=yes,top=500,left=500,width=400,height=400");
var myWindow = window.open("", "");
myWindow.document.body.innerHTML = "unload";
});
window.addEventListener('beforeunload', function () {
// window.open("https://www.google.com", "_blank", "toolbar=yes,scrollbars=yes,resizable=yes,top=500,left=500,width=400,height=400");
var myWindow = window.open("", "");
myWindow.document.body.innerHTML = "beforeunload";
});
我在这里创造了一个简单的小提琴: https://jsfiddle.net/ovidubs/2cdas6vj/