强制弹出页面代码,不被任何工具拦截的那种`~有兴趣的都进来研究研究!

weilf 2004-10-22 11:12:19
以下是我截取的一段代码,但我不会分析,请高手来分析一下,这种强制弹出的原理是什么,而且不被任何工具拦截,并且每天只弹一次,现在很多广告联盟都用这个弹出方式,淘宝啊什么的都是!!
大家研究一下!

<script language="javascript">
document.write("");

function GetCookie_265 (name) {
var arg = name + "=";
var alen = arg.length;
var clen = document.cookie.length;
var i = 0;
while (i < clen){
var j = i + alen;
if (document.cookie.substring(i, j) == arg) return getCookieVal_265 (j);
i = document.cookie.indexOf(" ", i) + 1;
if (i == 0) break;
}
return null;
}

function SetCookie_265 (name, value){
var argv = SetCookie_265.arguments;
var argc = SetCookie_265.arguments.length;
var expires = (argc > 2) ? argv[2] : null;
var path = (argc > 3) ? argv[3] : null;
var domain = (argc > 4) ? argv[4] : null;
var secure = (argc > 5) ? argv[5] : false;
document.cookie = name + "=" + escape (value) + ((expires == null) ? "" : ("; expires=" + expires.toGMTString())) + ((path == null) ? "" : ("; path=" + path)) + ((domain == null) ? "" : ("; domain=" + domain)) + ((secure == true) ? "; secure" : "");
}

function DeleteCookie_265 (name){
var exp = new Date();
exp.setTime (exp.getTime() - 1);// This cookie is history
var cval = 0;
document.cookie = name + "=" + cval + ";
expires=" + exp.toGMTString();
} //这里有段注释,我没能抓下来

var expDays_265 = 1;
var exp_265 = new Date();
exp_265.setTime(exp_265.getTime() + (expDays_265*24*60*60*1000));
var expDays = 1;
var exp = new Date();
exp.setTime(exp.getTime() + (expDays*24*60*60*1000));

function getCookieVal_265(offset){
var endstr = document.cookie.indexOf (";", offset);
if (endstr == -1) endstr = document.cookie.length;
return unescape(document.cookie.substring(offset, endstr));
}

DeleteCookie_265("is_use_cookie");
SetCookie_265("is_use_cookie", "yes", exp_265);
if(GetCookie_265('is_use_cookie') == null){
window.showModelessDialog('http://union.265.com/online.php?pid=6561&aid=&u=http%3A%2F%2Fwww.suite-dress.com&r=http%3A%2F%2Fwww.bt173.com%2Fad.htm&c=39211098408651&m=dc917c6253a06f184e62fbd6f5633d22&a=0&is_c=&ip=218.72.10.61&is_use_c=9962ad1c527ad56192beff48761268da','','scroll:0;status:0;help:0;resizable:0;dialogWidth:0px;dialogHeight:0px');
}
else{
if(GetCookie_265('adunion6561') == null){
SetCookie_265('adunion6561', 'yes', exp, '', 'bt173.com');
window.showModelessDialog('http://union.265.com/online.php?pid=6561&aid=&u=http%3A%2F%2Fwww.suite-dress.com&r=http%3A%2F%2Fwww.bt173.com%2Fad.htm&c=39211098408651&m=dc917c6253a06f184e62fbd6f5633d22&a=0&is_c=&ip=218.72.10.61&is_use_c=64edb23d9e3d6887c216b8c5b162b66b','','scroll:0;status:0;help:0;resizable:0;dialogWidth:0px;dialogHeight:0px');
}
}
</script>
...全文
435 16 打赏 收藏 举报
写回复
16 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
weilf 2004-10-22
  • 打赏
  • 举报
回复
那是因为你上的是不同的网站,每个网站自然都要弹出一次的~~~~
lanxk 2004-10-22
  • 打赏
  • 举报
回复
我晕.楼主说淘宝每天只弹出一次?
我都快被它烦死了,到哪都弹出这个破东西.
哪位大虾黑了它啊
weilf 2004-10-22
  • 打赏
  • 举报
回复
在这里搜索到的一个代码也是用showModelessDialog实现,但他弹开的没有菜单和工具栏,我上面演示弹出的是一个完整IE,而且不管你用的是什么浏览器,他都是新开一个IE!

他的演示看:http://www.aspxboy.com/popWindow/
我的演示:http://www.bt173.com/music/search.asp?sl=-1&word=刀郎
csdntzg 2004-10-22
  • 打赏
  • 举报
回复
关注一下.
weilf 2004-10-22
  • 打赏
  • 举报
回复
有谁能否分析一下上面那段代码??如果可以的话,根据这个写出一个通用的让大家易修改的代码~~~

唉~~现在站长的日子不好过啊~~~那些所谓的3721,GOGLE拦截广告,他妈不是断我们个人站长的路吗?真恶心,他们自己照样还不是靠广告过日子!!!靠,鄙视这些工具 !!!
weilf 2004-10-22
  • 打赏
  • 举报
回复
我也用MYIE2,也没有被拦截呀!!!而且只要你清了COOKIE,照样又能弹出一次~~~

http://www.bt173.com/music/search.asp?sl=-1&word=刀郎

用上面完整的连接试~~~
mrshelly 2004-10-22
  • 打赏
  • 举报
回复
被我的MYIE2 拦截了~~~~~~~~
eastnofail 2004-10-22
  • 打赏
  • 举报
回复
等到大家都用showModelessDialog来弹出窗口的时候,那时候拦截工具肯定也会增加过滤showModelessDialog窗口的
weilf 2004-10-22
  • 打赏
  • 举报
回复
他的最终效果大家可以看这里URL:http://www.bt173.com/music/search.asp?sl=-1&word=刀郎


大家测试一下有谁可以拦截???拦截不了吧?
当然,为了避免用户反感,一台电脑每天只弹一次,

我上面的那段代码是有错误的,我只是贴出来让大家研究研究,

eastnofail 2004-10-22
  • 打赏
  • 举报
回复
用showModelessDialog弹出的窗口照样能拦截,
eastnofail 2004-10-22
  • 打赏
  • 举报
回复
能做到吗????不被任何工具拦截????

我告诉你,不可能做到,如果发现有拦截不了的弹出窗口,只能说明拦截工具不好
是是非非 2004-10-22
  • 打赏
  • 举报
回复

showModelessDialog是不被截拦的
ttyp 2004-10-22
  • 打赏
  • 举报
回复
就是用showModelessDialog替代open,并记录当天是否弹出的COOKIE
HHH3000 2004-10-22
  • 打赏
  • 举报
回复
还是报错呀~~~~
weilf 2004-10-22
  • 打赏
  • 举报
回复
上面代码的执行效果请看:http://www.gogo173.com/cs/open/open.htm
weilf 2004-10-22
  • 打赏
  • 举报
回复
自己研究了多个代码综合一下,搞定了!~~~有兴趣的快来拿吧~~~呵呵!!!包含两个文件哦!后面那个文件默认请命名为:openwin.htm

应用弹出的页面的代码如下:
<!--
代码类型:JAVA
代码功能:强制弹出窗口,并自由设定多长时间弹出一次,参数设置请看代码中的注释
代码应用:广告应用,也用于某些通知类,避免被3721等工具认为是广告而被屏蔽
代码编写:肥TOO
QQ:106675444
支持网站:http://www.bt173.com
注:请转载本代码的同志保留这些注释信息,好让对这个代码还有疑问的人更快获得技术支持,谢谢!
-->
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>强制弹出窗口代码,不被3721,GOGLE等工具拦截</title>
</head>
<SCRIPT LANGUAGE="JavaScript">
<!-- Begin
var expDays = 12; // 设置时间,默认以小时为单位;若以天为单位,自己设置下一个提示设置参数

function GetCookie (name) {
var arg = name + "=";
var alen = arg.length;
var clen = document.cookie.length;
var i = 0;
while (i < clen) {
var j = i + alen;
if (document.cookie.substring(i, j) == arg)
return getCookieVal (j);
i = document.cookie.indexOf(" ", i) + 1;
if (i == 0) break;
}
return null;
}
function SetCookie (name, value) {
var argv = SetCookie.arguments;
var argc = SetCookie.arguments.length;
var expires = (argc > 2) ? argv[2] : null;
var path = (argc > 3) ? argv[3] : null;
var domain = (argc > 4) ? argv[4] : null;
var secure = (argc > 5) ? argv[5] : false;
document.cookie = name + "=" + escape (value) +
((expires == null) ? "" : ("; expires=" + expires.toGMTString())) +
((path == null) ? "" : ("; path=" + path)) +
((domain == null) ? "" : ("; domain=" + domain)) +
((secure == true) ? "; secure" : "");
}
function DeleteCookie (name) {
var exp = new Date();
exp.setTime (exp.getTime() - 1);
var cval = GetCookie (name);
document.cookie = name + "=" + cval + "; expires=" + exp.toGMTString();
}
var exp = new Date();
exp.setTime(exp.getTime() + (expDays*60*60*1000));//若以天为单位,在*60前面再加上*24即可
function amt(){
var count = GetCookie('count')
if(count == null) {
SetCookie('count','1')
return 1
}
else {
var newcount = parseInt(count) + 1;
DeleteCookie('count')
SetCookie('count',newcount,exp)
return count
}
}
function getCookieVal(offset) {
var endstr = document.cookie.indexOf (";", offset);
if (endstr == -1)
endstr = document.cookie.length;
return unescape(document.cookie.substring(offset, endstr));
}

function checkCount(page,winName,windowprops) {
var count = GetCookie('count');
if (count == null) {
count=1;
SetCookie('count', count, exp);

var arg_bt173 = new Array(page,winName,windowprops);
window.showModalDialog("openWin.htm",arg_bt173,"scroll:0;status:0;help:0;resizable:0;dialogWidth:0px;dialogHeight:0px");
//openwin.htm为强制弹出转向页面,必须与应用这个代码文件在同一目录下,或自己指定目录
//关于控制弹出窗口类型,大小,位置,是否显示工具栏,菜单栏等参数;自行在执行这个函数动作中修改,如本例是在Onload页面就执行
//如果还有其他疑问,可以到我站点http://www.gogo173.com获得支持

}
else {
count++;
SetCookie('count', count, exp);
}
}
// End -->
</script>
<body OnLoad="checkCount('http://www.gogo173.com/','newwindow','left=100, top=100, height=400, width=600, toolbar=yes, menubar=yes, scrollbars=yes, resizable=yes, location=yes, status=yes')">
</body>
</html>

还有一个,实现跳转页面openwin.htm(可自己另行命名)的代码如下:
<html>
<head>
<title>openWin</title>
<script language="JavaScript">
var page = !window.dialogArguments[0] ? "" : window.dialogArguments[0];
var winName = !window.dialogArguments[1] ? "" : window.dialogArguments[1];
var windowprops = !window.dialogArguments[2] ? "" : window.dialogArguments[2];
window.returnValue = window.open(page, winName, windowprops);
window.close();
</script>
</head>
</html>
发帖
JavaScript

8.7w+

社区成员

Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
帖子事件
创建了帖子
2004-10-22 11:12
社区公告
暂无公告