gpt4 book ai didi

adsense - 如何检测我网站上的 Adblock?

转载 作者:行者123 更新时间:2023-12-03 03:58:02 25 4
gpt4 key购买 nike

我希望能够检测用户在访问我的网站时是否使用广告拦截软件。如果他们正在使用它,我想显示一条消息,要求他们关闭它以支持该项目,例如 this website确实如此。

如果您进入该网站并且您的浏览器启用了某种广告拦截软件,则该网站不会显示实际广告,而是显示一个小横幅,告诉用户广告收入用于托管项目,他们应该考虑关闭广告拦截。

我想在我的网站上执行此操作,我在其上使用 AdSense 广告,我该怎么做?

最佳答案

我的解决方案并不特定于某个广告网络,而且非常轻量级。我已经在生产中运行它几年了。 AdBlock 会阻止所有包含“ads”或“prebid”一词的网址。这就是我所做的:

我在我的网站根目录中添加了一个名为 prebid-ads.js 的小 js 文件

这是该文件中唯一的代码行。 更新 2022-04-26 将此变量称为其他名称,请参见下文!

var canRunAds = true;

然后在页面中的某个位置:

<html>
<head>
<script src="/js/prebid-ads.js"></script>
</head>
<body>
<script>
if( window.canRunAds === undefined ){
// adblocker detected, show fallback
showFallbackImage();
}
</script>
</body>
</html>

更新 2022-04-26 uBlock Origin 加载他们自己的 ads-prebid.js,它可以恢复此答案中描述的技巧(自豪!),他们的文件包含以下内容:

(function() {
'use strict';
window.canRunAds = true;
window.isAdBlockActive = false;
})();

作为解决方案,只需将 canRunAds 变量重命名为有趣的名称,例如 window.adsAreWithUswindow.moneyAbovePrivacy

Ans de Nijs 的发现和解决方法。谢谢!

支持扩展

像 ads.js 这样的文件至少会被 Chrome 上的这些广告拦截器拦截:

  • 广告拦截
  • 广告拦截增强版
  • 广告拦截专业版
  • 幽灵

不适用于:

隐私獾

关于adsense - 如何检测我网站上的 Adblock?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4869154/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com