广告拦截器基本上使用一些 ID 或 jQuery 之类的选择规则来操作一些元素,这些元素存储在他们的数据库中,在 DOM 准备好后一段时间就完成了。
因此,您必须在 DOM 准备好后的某个时间(例如 3 秒)后检查您的广告元素是否被操纵。您基本上可以检查display
(因为 AdBlockers 隐藏它)CSS 属性或广告元素的 innerHTML。下面是一个例子:
工作演示: http: //jsfiddle.net/cxvNy/(使用AdBlock for Chrome测试,您需要激活此功能)
如果您的广告 HTML 是:
<div id="google_ads_frame1">aa</div>
然后:
$(function(){
setTimeout(function(){
if($("#google_ads_frame1").css('display')=="none") //use your ad's id here I have used Google Adense
{
$('body').html("We noticed you have an active Ad Blocker. Example.com is ad funded, we promise our ads are of high quality and are unobtrusive. The best help you could provide to keep us running, is to whitelist us in your ad blocker. Thanks!");
}
},3000);
});
希望上面的代码是不言自明的:)