弹出窗口被屏蔽的原因:
1. 浏览器内置的屏蔽程序阻止的弹出窗口
window.open() 返回null
2. 浏览器扩展或其他程序阻止的弹出窗口
window.open() 通常会抛出一个错误
兼容代码:
var blocked = false;
try {
var wroxWin = window.open("http://www....com", "_blank");
if (wroxWin == null){
blocked = true;
}
} catch (ex){
blocked = true;
}
if (blocked){
alert("The popup was blocked!");
}
只能获取阻止弹窗的原因,但不能解决"浏览阻止弹窗"
来源: JS高级程序设计(第三版)