检测AdBlocking软件?

Jam*_*ght 13 php jquery adblock

我最近访问了一个网站并注意到该页面有一个部分说它注意到我正在使用AdBlocking软件,我可以将其关闭以帮助支持这样的小网站.我只是想知道你会怎么做?最好是客户端还是服务器端?

Jas*_*per 30

这是服务器方面根本无法完成的事情 - 人们敲门并说"看着我,我有AdblockPlus!"的原因是zilch.在客户端,adblock正在积极尝试影响页面内容,这是您可以看到的,并且看到他们正在使用广告拦截器.

无论如何,我碰巧知道newgrounds.com也是这样做的.(他们的新布局被adblock加上用户搞砸了 - 作为回应他们做了最好的比赛"如果你不打算通过我们的广告帮助我们,去商店买东西"-banner.

快速浏览newgrounds的来源告诉我他们正在用一些简单的javascript做这件事.文件中的第一个:

var user_is_leecher = true;

接下来是一个外部脚本标记: src=checkabp?thisistotrickabp=***adress of ad affilliate***

现在这个笑话:他们只是信任adblock plus来过滤掉那个脚本,就像那里的所有内容一样: user_is_leecher = false;

从那里,他们可以做任何事情.


Bea*_*eau 7

这里提到的所有方法都依赖于广告拦截器去掉代码.这对某些广告拦截器(如Mac上的NetBarrier)不起作用.当广告拦截器出现时,您还必须不断更新代码.

要检测用户是否阻止了广告,您只需在广告JavaScript中找到一个功能并尝试对其进行测试即可.他们用什么方法阻止广告并不重要.以下是Google Adsense广告的外观:

if(typeof(window.google_render_ad)=="undefined") 
{ 
    //They're blocking ads, do something else.
}
Run Code Online (Sandbox Code Playgroud)

此方法概述如下:http://www.metamorphosite.com/detect-web-popup-blocker-software-adblock-spam