当前位置: 首页 > 图文教程 > 网络编程 > Javascript > window.open被浏览器拦截后的自定义提示效果代码

Javascript
getYear()函数问题(javascript教程)
一些比较常见的Javascript框架
JavaScript事件参考手册
javascript时间对象的练习
prototype,executing,context,closure
javascript实现网页跳转的方法
JavaScript的事件:onLoad
JavaScript操作符以及操作符优先级
Javascript操作符应用详细讲解
JavaScript语句
JavaScript 核心对象
Javascript文档及其关联对象
Javascript表单应用的对象
JavaScript初学困境
Javascript触发A标记的点击事件
JavaScript的setAttribute
学习JavaScript语言的思想前提
美化网页表单的提交和重置按钮
一篇简单学习Javascript的学习笔记
仿Apple滑动条产品展示效果

Javascript 中的 window.open被浏览器拦截后的自定义提示效果代码


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 438 ::
收藏到网摘: n/a

现在越来越多的浏览器有拦截弹出窗口的功能。广告弹出来给拦掉了就无所谓,要是客户在付款时给拦掉了可就不能乱算了。
Gmail的“哎呀”算是经典,可是,前天心云给出了更帅的提示=。= 记得打开浏览器拦截后 测试一下,在线阅读器里不知道代码会不会给过滤。。代码在下边,其实没什么技术含量滴。挖哈哈。。。
复制代码 代码如下:

window._open=window.open;
window.open=function(sURL,sName,sFeatures,bReplace){
if(sName==undefined){sName="_blank"};
if(sFeatures==undefined){sFeatures=""};
if(bReplace==undefined){bReplace=false};
var win=window._open(sURL,sName,sFeatures,bReplace);
if(!win){
alert('天啦!你的机器上竟然有软件拦截弹出窗口耶,好讨厌哦,人家不来了啦!快去掉嘛~~555~');
return false;
}
return true;
}

=。= 重写window.open写了两天都没有想到更好的办法,参数要一个一个加,第四个参数,似乎只是为了不被back回去,例如:
复制代码 代码如下:

window.open("a.html","a");
window.open("b.html","a","",true);
打开的b.html是没有后退可以按滴,MSDN有说明 。
Optional. Boolean that specifies whether the sURL creates a new entry or replaces the current entry in the window's history list. This parameter only takes effect if the sURL is loaded into the same window.
true sURL replaces the current document in the history list
false sURL creates a new entry in the history list.