欢迎光临

木子屋

标题: 打造不被Google弹出式窗口拦截器Kill的广告

作者: dnawo

日期: 2007-09-19 05:26 PM

分类: 脚本语言

内容: 解读Google弹出式窗口拦截器设计原则
我们先来做一个测试：
HTML代码
document.write("Link1");
document.write("");
document.write("Link2");

[Ctrl+A 全部选择 提示：你可先修改部分代码，再按运行]
是不是很奇怪为什么Links1中的hao123打不开？这还得从Google弹出式窗口拦截器的设计原则说起。在Google工具栏支持中心中对其弹出式窗口拦截器的设计原则说明如下：
引用内容Certain user actions, such as clicking on a link, will issue a popup lease. One navigation or the opening of one new window will then clear that lease. A single lease will not permit both a navigation and the opening of a new window.
现在我们来解释一下测试过程中出现两种不同结果的原因：
当点击Links1时，这一特定的用户行为(点击)发出了一次弹出式窗口要求，于是拦截器允许打开mzwu，mzwu打开后要求也随之清除，所以再要在新窗口中打开的hao123就被拦截了。
当点击Links2时，这一特定的用户行为(点击)发出了一次弹出式窗口要求，于是拦截器允许打开mzwu，mzwu打开后要求也随之清除，但这次hao123也随后被打开了，因为这次hao123是在当前窗口中打开，不属于弹出式窗口。
基于上边的测试我们可以得出两点结论：
1.一次特定的用户行为只允许一次弹出式窗口，以此类推
2.对于非弹出式窗口，Google弹出式窗口拦截器不予理会
不被Kill的广告
基于上边两点结论要制作不被Google弹出式窗口拦截器拦截的广告只须让广告不在没有特定用户行为时打开或不用弹出式窗口打开(显示/隐藏层、模态窗口)即可。
HTML代码
function findObj(name, doc)
{
var x = doc[name];
if (x) return x;
if (doc.all)
{
x=doc.all[name];
}
if (x) return x;
for(var i=0; doc.layers && i

[Ctrl+A 全部选择 提示：你可先修改部分代码，再按运行]
HTML代码
var xWin = null;
function closePopup()
{
xWin.hide();
}
function openBadPopUp()
{
try
{
xWin=window.createPopup();
var vhtml= '';
xWin.document.body.innerHTML = vhtml;
xWin.document.body.onmouseup = closePopup;
xWin.show(200, 200, 462, 351);
}
catch (er)
{
}
}
window.onload = openBadPopUp()

[Ctrl+A 全部选择 提示：你可先修改部分代码，再按运行]
HTML代码
function openBadPopUp()
{
try
{
var xWin1=window.showModelessDialog("pic/20070919/popup.gif", "", "dialogLeft:20px; dialogTop:20px");
var xWin2=window.showModalDialog("pic/20070919/popup.gif", "", "dialogLeft:200px; dialogTop:200px");
}
catch (er)
{
}
}
window.onload = openBadPopUp()

[Ctrl+A 全部选择 提示：你可先修改部分代码，再按运行]

+ 查看当前日志评论 (0)

登录

────────────

木子屋

PJBlog3 v3.2.9.518 Inside.

Processed In 0.676 ms

返回

标题: 打造不被Google弹出式窗口拦截器Kill的广告

你没有权限发表评论

────────────

木子屋

PJBlog3 v3.2.9.518 Inside.

Processed In 0.676 ms

返回

暂无评论

返回

────────────

木子屋

PJBlog3 v3.2.9.518 Inside.

Processed In 0.689 ms

返回