`
feiliboos
  • 浏览: 667200 次
文章分类
社区版块
存档分类
最新评论

浏览器是否自动屏蔽了弹出窗口的检测

 
阅读更多

我在使用MSN Webmessenger时,发现它可以告诉我使用了弹出窗口阻挡功能,在分析代码后,提取出下面的程序,可以直接使用。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD><TITLE>弹出窗口检查</TITLE>
<META http-equiv=Content-Type content="text/html; charset=utf-8"><SCRIPT language=javascript>
function openwindow(u,n,w,h)
{
var optionstring = "height=" + h + ",width=" + w + ",menubar=no,titlebar=yes,resizable=yes,scrollbars=no,status=no,toolbar=no";
window.open(u,n,optionstring);
}

var spbw = false;
function ShowBlockerWarning()
{
return spbw;
}

function Init()
{
if (true == Detect())
{
spbw = true;
}
}

function Detect()
{
var e = false;
var pw1 = null;
var pw2 = null;
try
{
do
{
var d = new Date();
var wName = "ptest_" + d.getTime();
var testUrl = IsYBI() ? "popupTest.aspx" : "";

pw1 = window.open(testUrl,wName,"width=0,height=0,left=5000,top=5000",true);
if (null == pw1 || true == pw1.closed)
{
e = true;
break;
}
pw2 = window.open(testUrl,wName,"width=0,height=0");
if (null == pw2 || true == pw2.closed)
{
e = true;
break;
}
if (IsYBI())
{
if (pw1 != pw2)
{
e = true;
break;
}
}
pw1.close();
pw2.close();
pw1 = pw2 = null;
}
while(false);
}
catch(ex)
{
e = true;
}
if (null != pw1)
{
try { if (!pw1.closed) pw1.close(); } catch(ex){}
}
if (null != pw2)
{
try { if (!pw2.closed) pw2.close(); } catch(ex){}
}
return e;
}

function IsYBI()
{
var i = false;
try
{
var xObj = new ActiveXObject("YBIOCtrl.CompanionBHO");
if (xObj==null) i = false;
else i = true;
}
catch(ex) { i = false; }
return i;
}

Init();

</SCRIPT>


<SCRIPT language=javascript>
var warningMessage = "检查到使用了弹出窗口阻挡器!Pop-up blocker detected.";
var warningInformation = "请确保浏览器允许本网站打开弹出窗口。";
var g_blockerHtml;
g_blockerHtml = "<div><table border=1 cellspacing=0 cellpadding=0>";
g_blockerHtml += "<tr><td>" + warningMessage + "</td></tr>";
g_blockerHtml += "<tr><td>" + warningInformation + "</td></tr>";
g_blockerHtml += "</table></div>";
</SCRIPT>

<SCRIPT language=javascript>

var messengerWindow = null;
function OnLoad_WelcomePage()
{
if ( ShowBlockerWarning() )
{
var messageObject = document.getElementById("noPopHtml");
if (null != messageObject)
{
messageObject.innerHTML = g_blockerHtml;
}
}
}
</SCRIPT>
</HEAD>
<BODY onload=OnLoad_WelcomePage();>

<SPAN id=noPopHtml>

</BODY>
</HTML>

分享到:
评论

相关推荐

    JavaScript网页特效范例宝典源码

    1.1 弹出窗口控制 2 实例001 打开新窗口显示广告信息 2 实例002 定时打开窗口 4 实例003 通过按钮创建窗口 5 实例004 自动关闭的广告窗口 6 实例005 控制弹出窗口居中显示 7 实例006 弹出的窗口之Cookie控制 9 实例...

    《程序天下:JavaScript实例自学手册》光盘源码

    12.18 幻灯片式弹出窗口 12.19 弹出窗口生成器 12.20 关不掉的警告框 12.21 循环的警告框 12.22 屏蔽状态栏的错误提示 12.23 获取模式窗口的值 第13章 日期和时间特效 13.1 指定时间关闭页面 13.2 最简单的时间日期...

    程序天下:JavaScript实例自学手册

    12.18 幻灯片式弹出窗口 12.19 弹出窗口生成器 12.20 关不掉的警告框 12.21 循环的警告框 12.22 屏蔽状态栏的错误提示 12.23 获取模式窗口的值 第13章 日期和时间特效 13.1 指定时间关闭页面 13.2 最简单的时间日期...

    KODExplorer 芒果云-资源管理器

    - 标签关闭提示:检测是否有未保存文件,文件修改实时修改是否修修改的按钮状态 ####fix bug:(bug解决和程序优化) - 文本文件编辑 文件名含有url编码则出错bug - 右键菜单在最下面时,右键位置重叠导致点击...

    javascript网页特效实例大全

    9.8 自动弹出的窗口 241 9.9 自动消失的广告窗口 242 9.10 窗口的震动效果 243 9.11 同时打开10个窗口 244 9.12 检测系统信息窗口 245 9.13 测试链接速度的窗口 248 9.14 关闭窗口打开收藏夹 250 9.15 关闭...

    javascript网页特效实例大全(8-12)

    实例241 在弹出的新窗口中选择图片 372 8.6 在页面中播放图片 374 实例242 幻灯片式播放图片 374 实例243 无间断的图片循环滚动效果 376 8.7 图片的其他效果 377 实例244 导航地图 377 8.8 播放音乐 ...

    精通javascript

    • 10.9.htm 鼠标感应 弹出警告框 • 10.10.htm 鼠标感应 渐显图片 • 10.11.htm 禁用鼠标右键 第11章(\第11章) • 11.1.htm 省略window的alert&#40;&#41;方法 • 11.2....

    PHP开发实战1200例(第1卷).(清华出版.潘凯华.刘中华).part1

    实例179 修改表单属性为弹出窗口 216 实例180 表单输入单元的文字设置 217 实例181 表单输入单元单击删除 218 实例182 表单文本输入的移动选择 219 实例183 通过下拉列表选择头像 220 3.5 CSS+DIV页面布局 222 实例...

    PHP开发实战1200例(第1卷).(清华出版.潘凯华.刘中华).part2

    实例179 修改表单属性为弹出窗口 216 实例180 表单输入单元的文字设置 217 实例181 表单输入单元单击删除 218 实例182 表单文本输入的移动选择 219 实例183 通过下拉列表选择头像 220 3.5 CSS+DIV页面布局 222 实例...

    IBM WebSphere Portal门户开发笔记01

    18、弹出窗口居中显示JS代码 255 19、CSS渐变样式 256 20、JS READYSTATE 256 21、JS与页面刷新、关闭事件 257 22、SHOWMODALDIALOG和SHOWMODELESSDIALOG及其右下角提示框 257 23、特殊字体样式 258 24、JS确认窗口...

    BotBlocks:BotBlocks阻止Windows计算机中的恶意IP地址-开源

    因此可能会有误报,但用户可以使用sqlite数据库浏览器编辑和更新此数据库),该工具一旦检测到恶意流量,就会弹出一个窗口,用户可以选择将其屏蔽或将其列入白名单,如果用户选择阻止,它将终止现有连接并创建...

    JavaScript应用177例

    32.7.htm 一直弹出新窗口 第33章(\cha33) 代码说明: 1.代码33.1.htm须使用IE浏览器打开 2.代码33.2.htm须使用Mozilla Firefox浏览器打开 33.1.htm 使用IE处理XML 33.2.htm 使用...

    ITL Web Safe-crx插件

    阻止烦人的广告:-----------------------屏幕上会显示一些广告,例如弹出式窗口,视频广告,横幅广告等,它们会使您的广告质量下降浏览体验。 屏蔽所有此类广告,并使用Ad-Blocker在网络上流畅浏览。 支持语言:...

    1345个易语言模块

    取 腾讯TT浏览器的地址栏文本模块.ec 取节气模块.ec 取试用数据.ec 取非系统进程全路径文件名.ec 变身_超级编辑 框.ec 变速模块(1.0).EC 古木_选择文件夹.ec 古木滑块条_免注册版.ec 句柄操作.ec 各类已打开 的...

    1350多个精品易语言模块

    取 腾讯TT浏览器的地址栏文本模块.ec 取节气模块.ec 取试用数据.ec 取非系统进程全路径文件名.ec 变身_超级编辑 框.ec 变速模块(1.0).EC 古木_选择文件夹.ec 古木滑块条_免注册版.ec 句柄操作.ec 各类已打开 的...

    易语言模块914个

    CPU占用率检测模块.ec cs.ec DES加密模块 1.0.ec DIY热键框模块.ec DLL注入模块.ec DOS命令模块.ec EC.EC EdbServer1.0客户端.ec EDB、高级表格、XLS互换.ec edb到html-1.0.ec EDB数据库客户端模块 1.0....

    精通JavaScript

    • 10.9.htm 鼠标感应 弹出警告框 • 10.10.htm 鼠标感应 渐显图片 • 10.11.htm 禁用鼠标右键 第11章(\第11章) • 11.1.htm 省略window的alert()方法 • 11.2.htm 未...

Global site tag (gtag.js) - Google Analytics