小赖子的英国生活和资讯

检查广告是否被屏蔽最简单的方法

阅读 桌面完整版

很多人Chrome浏览器 都装有一个 AdsBlocker 的插件. 这玩意可以让页面的广告消失的无影无踪, 所有广告的元素的会在浏览器渲染之前强行被移除. 有一个方法可以很简单的判断用户是否装有这个AdsBlocker.

就是在 head 元素加入 以下代码. async=false 是因为如果不指定同步加载 就很可能被 CLOUDFLARE 等优化成异步加载了, 这样就不会起作用.

1
<script async="false" src="/js/adsbygoogle.js"></script>
<script async="false" src="/js/adsbygoogle.js"></script>

然后这个文件里就只有一行代码:

1
var isAdsDisplayed = true;
var isAdsDisplayed = true;

然后你可以在HTML页面的 body 结束前判断 这个变量是否还存在

1
2
3
if(window.isAdsDisplayed === undefined ) {
  // 广告被移除, 这里可以提示用户或者记录信息
}
if(window.isAdsDisplayed === undefined ) {
  // 广告被移除, 这里可以提示用户或者记录信息
}

这招能行 是因为 AdsBlocker 是通过特征(就像那种杀毒软件说的智能识别)来识别广告代码. 宁可错杀也不能放过一个可疑的目标.

强烈推荐

微信公众号: 小赖子的英国生活和资讯 JustYYUK

阅读 桌面完整版
Exit mobile version