- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我希望能够检测用户在访问我的网站时是否使用广告拦截软件。如果他们正在使用它,我想显示一条消息,要求他们关闭它以支持该项目,例如 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.adsAreWithUs
或 window.moneyAbovePrivacy
。
Ans de Nijs 的发现和解决方法。谢谢!
支持扩展
像 ads.js 这样的文件至少会被 Chrome 上的这些广告拦截器拦截:
不适用于:
隐私獾
关于adsense - 如何检测我网站上的 Adblock?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4869154/
我目前将我的 Adsense 广告余额设置为 40%-60%,这是提高收入的理想百分比? 如果你自己也是adsense的用户,那么你选择的比例是多少? 我试过用它进行调整,但似乎很长时间没有任何效果。
我使用这个脚本 if(typeof(window.google_render_ad)=="undefined") { //document.getElementById('player-embed'
我正在使用 mediawiki 的一个实例,并将 Adsense 添加到皮肤的 php 文件中。这会在所有页面上放置 Adsense 横幅,但我想从非常特定的页面中省略 Adsense 横幅。主要是“
我已经构建了一个 Web 应用程序。 登录后,会显示两个 Google Adsense 广告。 问题是,即使我的 web 应用程序是一个任务/项目管理工具,所宣传的产品几乎总是相同的,而且我猜有很多产
一位客户要求我使用他的 Google 发布商 ID 和广告 ID 创建他的广告。 他告诉我在博客上创建这个。 我现在的问题是我不知道他到底是什么意思,因为我习惯的是复制代码并粘贴它。 那么,有人可以向
这个问题在这里已经有了答案: Why Adsense ads don't show up in website home page (2 个回答) 8 年前关闭。 我有一个新闻网站。 Adsense
google adsense 如何判断被点击的广告是有效还是无效(被人恶意点击或被机器人点击)? 我知道一家公司在做这种工作。 http://www.adometry.com/ 以前称为 Click
你能告诉我,谷歌广告是如何工作的吗? 请简要解释我.. 最佳答案 有quite a bit of information可从 Google 获得有关该主题的信息。 关于adsense - Google
我想在我的网站上添加 Google AdSense,并且我想添加 X 语言(不是英语)。我如何告诉谷歌网站上使用的是哪种语言? 谢谢! 最佳答案 https://www.google.com/adse
我的网站刚刚通过 AdSense 批准,我尝试在网站上放置一些基本的展示广告。 我已经设置了广告,并在我的项目中粘贴了 HTML 代码。 当我访问该网站时,控制台显示: Failed to load
我有一个发布免费备份软件的网站。我网站 (codessentials.com) 上的 adsense 框总是显示 5 个与备份相关的广告之一。 在许多网站上,您可以看到 Adsense 框显示基于用户
我正在尝试将我的网站重新提交给 Google AdSense,但它一次又一次地出现以下错误: A user with the email you specified already exists Pl
我正在尝试创建我的 google 帐户 adsense,但此时我卡住了 我需要在第二行做标记吗? 我只需要等待? 代码在我的网站上:www.codando.com 谢谢 最佳答案 您需要点击蓝色的大按
关闭。这个问题是off-topic .它目前不接受答案。 想改善这个问题吗? Update the question所以它是 on-topic对于堆栈溢出。 11 年前关闭。 Improve this
我最近为我的项目创建了一个演示站点,每周大约有 150 次 +/- 访问。我想将 Google AdSense 添加到该网站,我不希望从中赚到任何大钱,但我真的很想获得一些使用 Google Adse
我希望当有人点击 Google AdSense 广告时,广告商的网站会在新窗口中打开。 最佳答案 其反对 adsense policy .据我所知,只有选定的发布商允许这样做,通常是流量巨大的大网站。
我想知道是否可以将自定义字段放在可用于过滤 API 调用的广告单元上,并用于计算该内容的收入,以便与网站的内容创建者分享收入。 内容创作者有 500 多个,自定义 channel 限制在 500 个,
关闭。这个问题需要debugging details .它目前不接受答案。 想改善这个问题吗?更新问题,使其成为 on-topic对于堆栈溢出。 4年前关闭。 Improve this questio
如何使 Google Adsense 块透明? 它使用 iframe,并驻留在其他域中,因此 jQuery 无能为力。我试图用 css 来定位它,但这也是不可能的。有任何想法吗? 我不是要玩游戏 Ad
如何在一个网站上拥有多个 AdSense 单元? Google 提供的唯一代码是按单位计算的。 (adsbygoogle = window.adsbygoogle || []).push({})
我是一名优秀的程序员,十分优秀!