javascript - 如何仅在启用 adblock 时显示广告背后的背景?

标签 javascript css adblock

我试图在通常显示 300x250 广告的地方显示背景图片,但只有在 adblock 屏蔽广告时才显示。任何人都知道如何做到这一点?使用 div 会导致背景在我不想要的广告加载之前显示。

谢谢

最佳答案

由于访问者的计算机上安装了广告拦截软件,因此无法知道广告是否被拦截(我能想到的)。但是,由于广告是用 JavaScript 显示的——它被广告拦截软件专门定位和阻止——你可以编写一些 JavaScript 来检查广告是否在页面末尾加载,如果没有,添加一个 CSS 类到你的 div 显示你想要的背景图片。伪代码:

<style type="text/css">
     .adblocked { background: url("img/no-ad.jpg") left top no-repeat; }
</style>

<div id="ad"></div>

<script src="ads.js"></script>
<script>
    if (typeof adLibraryName === "undefined") {
        // ad stuff was not loaded
        document.getElementById("ad").className += " adblocked";
    }
</script>

正如 MAXIM 所述,这与 PHP 无关,您无法让它与 PHP 一起工作,因为 PHP 在服务器上运行并且不知道是否安装了广告拦截。简而言之,所有这些都是客户端问题。

关于javascript - 如何仅在启用 adblock 时显示广告背后的背景?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13878734/

相关文章:

javascript - ES6 生成器代码中 task/perform 的用户是什么?

javascript - UserControl 内的一页上有多个 ModalPopUpExtender

javascript - 从 IFrame 源内部更改 IFrame 属性。是否可以?

javascript - React + flux : can action return a value?(例如最后创建的 id)

javascript - 影响不同 SVG 中的相同类

html - CSS定位在底部

html - 为什么这个 CSS 工作表不呈现?

javascript - 循环浏览多个 body 背景图像

google-chrome - inject.preload.js 无法从我的开发环境中加载 chrome 中的文件

html - Adblocker 隐藏了一个不是广告的 CSS 类