我在FF和Chrome中打开了PopUp拦截器。 我有一段代码来检查PopUp的工作原理:
function checkPopUp()
{
var myTest = window.open("about:blank","","directories=no,height=1,width=1,menubar=no,resizable=no,scrollbars=no,status=no,titlebar=no,top=0,location=no");
var popUpsBlocked = '';
if (!myTest) {
popUpsBlocked = true;
} else {
popUpsBlocked = false;
}
return popUpsBlocked;
}
其工作正常“onload”页面。 但是当我使用超级链接onclick时,它的弹出窗口无法打开。
<a onclick="checkPopUp()" href="#">Test</a>
答案 0 :(得分:0)
浏览器允许在“点击”事件循环期间弹出窗口。不同的浏览器在用户控制下具有不同的配置选项,但通常默认行为是“点击”被视为用户愿意从页面请求功能。
答案 1 :(得分:0)
以下代码已在FF29.0,IE9,Chrome35.0,Safari中测试过,最好的部分是它正在运行!!!
var popupBlocker = {
isPopupBlocked: function (width, height) {
setTimeout(function () {
var popup = window.open("");
if (!popup) {
return false;
}
else {
popup.document.open();
popup.document.write("<html><body onload='window.close();'></body></html>")
popup.document.close();
return true;
}
}, 100);
}
};
popupBlocker.isPopupBlocked();