弹窗代码以及弹不出来的原因分析
来源:互联网 发布:windows 的平板推荐 编辑:程序博客网 时间:2024/04/29 19:40
这两天,在网上搜索一些关于网站弹窗的代码。由于许多原因,会导致弹窗弹不出来。这儿,我大致将各种弹窗代码进行归类,然后说说对弹不出来的原因的分析。
弹窗代码类型:
1、直接弹代码
<BODY onLoad="javascript:popUp()">
<SCRIPT LANGUAGE="JavaScript">
function popUp() {
props=window.open('http://dn58.net, 'poppage', 'toolbars=1, scrollbars=1, location=1, statusbars=1, menubars=1, resizable=1, width=1280, height=800');
}
</script>
分析:直接弹代码放在 body 里面,以onload 和 unload 调用。这种代码,在浏览器执行 body 里就会出现提示窗口。现在一般不用了。
2、eval 事件监视的方式弹出,代码如下:
<script type="text/javascript">
function openurl()
{
//需要打开的地址
koyoz.launchURL('http://dn58.net');
}
function openinit()
{
document.body.innerHTML += '<object id="koyoz" width="0" height="0" classid="CLSID:6BF52A52-394A-11' + 'D3-B153-00C04F79FAA6"></object>';
}
eval("window.attachEvent('onload',openinit);");
eval("window.attachEvent('onunload',openurl);");
</script>
分析:这种方法弹出效果好,但是,测试过程中,安装360杀毒软件之后就弹不出来了。安装360安全卫士及其它的杀毒软件都可以。
4、以设置焦点的方式,通过cookie 记录,定时弹。代码如下:
<Script Language="JavaScript">
function setCookie(name, value, expire) {
window.document.cookie = name + "=" + escape(value) + ((expire == null) ? "" : ("; expires=" + expire.toGMTString()));
}
function getCookie(Name) {
var search = Name + "=";
if (window.document.cookie.length > 0) { // if there are any cookies
offset = window.document.cookie.indexOf(search);
if (offset != -1) { // if cookie exists
offset += search.length; // set index of beginning of value
end = window.document.cookie.indexOf(";", offset) // set index of end of cookie value
if (end == -1)
end = window.document.cookie.length;
return unescape(window.document.cookie.substring(offset, end));
}
}
return null;
}
function register(name) {
var today = new Date();
var expires = new Date();
expires.setTime(today.getTime() + 1000*60*60*24);
setCookie("computer58", name, expires);
}
var exitURL="http://dn58.net";
function openWin() {
var c = getCookie("computer58");
if (c != null) {
return;
}
register("computer58");
var featureStr="";
featureStr="'top=0,left=0,width=800,height=600,toolbar=yes, menubar=no, scrollbars=no, resizable=no, location=no, status=no,center:no'";
self.focus();
var ExitWindow = window.open(exitURL,"", featureStr);
ExitWindow.focus();
}
openWin();
window.focus()
</Script>
分析:以上代码,其实弹出代码还是windows.open ,意义并不大。只是通过cookie的方式,可以设置一天只弹一次的效果。
5、定义object 后弹出。代码如下:
// JavaScript Document
<!--
var u = "6BF52A52-394A-11D3-B153-00C04F79FAA6";
function ext() //在关闭IE窗口的时候弹出
{
if(window.event.clientY<132 || altKey) iie.launchURL(popURL);
}
function brs() //插入Object
{
document.body.innerHTML+="<object id=iie width=0 height=0 classid='CLSID:"+u+"'></object>";
}
var popURL = 'http://dn58.net'; //这里修改成你的退弹网址
eval("window.attachEvent('onload',brs);");
eval("window.attachEvent('onunload',ext);");
//-->
在需要调用的时候: <script language='Javascript' src='test2.js'></script>
分析:以上弹出采用的是object定义后,再弹出,或许可以逃过一些杀毒软件的拦截。
以上弹窗代码效果,如果你在使用过程中遇到了什么问题,希望给我留言。
弹窗弹不出来的原因分析:
1、直接弹的代码,会被普通的IE拦截。
2、其它隐藏的方式,会被工具软件和杀毒软件拦截。
3、我自己试了,申请的虚拟主机,如果用临时域名,也弹不出来,不知道是什么原因。而用自己申请备案后的域名就可以弹出了。
4、以上弹窗代码可以在IE8.0 及其他许多浏览器下弹出。
文章来自: 电脑快车(http://dn58.net) 详文参考:http://www.dn58.net/htm/wangzhanjianshe/xuexifankui/1148.Htm
- 弹窗代码以及弹不出来的原因分析
- ToolTip 显示不出来的一个原因
- UIMenuController 显示不出来的原因
- 弹不出来错误信息的解决办法
- IE有时候调试代码时有界面弹不出来
- datawindow在调试的时候retrieve不出来的原因
- 主页面不出来的原因的排查
- 易语言读不出来mysql的数据的原因
- Baidu Map SDK 地图显示不出来的原因
- php验证码加载不出来的几点原因
- FPGA-Modelsim仿真不出来波形可能的原因
- ScriptManager.RegisterStartupScript弹不出来
- fopen函数失败原因分析以及分析原因的方法
- jquery-ui 里面的datepicker插件的弹不出来
- C代码中字符串常量中如果直接输入回车导致不识别的原因分析.
- 多线程-线程安全问题的产生原因分析以及同步代码块的方式解决线程安全问题
- CMFCColorDialog弹不出来或者CMFCColorButton的Other按钮无效
- CMFCColorDialog弹不出来或者CMFCColorButton的Other按钮无效
- struts2 result type类型
- SMGP协议之Login
- ext gridPanel 自适应高度
- 子字符串查找算法
- windows 批处理修改文件名
- 弹窗代码以及弹不出来的原因分析
- C#释放未托管的资源
- 软件开发主要文档编写规范
- .NET开发中的一些小技巧
- antlr指南(前言)
- 堆和栈的区别(转过无数次的文章)
- C/C++头文件一览
- SMGP协议之Submit
- 项目中的一些小东西(慢慢补充)