首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在开启adblock的情况下才能在广告后面显示背景?

问如何在开启adblock的情况下才能在广告后面显示背景?
EN

Stack Overflow用户
提问于 2012-12-14 20:30:13
回答 3查看 966关注 0票数 0

我正在尝试显示一个背景图像,通常是300x250的广告,但只有当广告阻止广告时才会显示。有人知道这是怎么做的吗?使用div会导致在广告加载之前显示背景,这是我不想要的。

谢谢

EN

回答 3

Stack Overflow用户

发布于 2012-12-14 20:59:11

因为adblock软件安装在访问者的计算机上,所以没有办法知道广告是否被阻止(这是我能想到的)。但是,由于广告是用JavaScript显示的--这是由adblock软件专门针对和屏蔽的--你可以编写一些JavaScript来检查广告是否在页面的末尾加载,如果没有,就在你的div中添加一个显示你想要的背景图像的CSS类。伪代码:

代码语言:javascript
复制
<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运行在服务器上,不知道是否安装了广告拦截。简单地说,所有这些都是客户端的问题。

票数 1
EN

Stack Overflow用户

发布于 2012-12-23 15:52:40

检查Adsense是否被阻止,从而将替代内容加载到广告容器中。

if (typeof(window.google_jobrunner) ==‘未定义’){

// Adsense被阻塞,请将其他内容加载到容器中

}

如果要这样做,最好用CSS设置容器的高度。

你可以通过选择“打开可阻止的项目”来检查Adblock Plus在Firefox中阻止了什么。

Adblock Plus还会屏蔽文件名中包含常见广告尺寸的图片,例如'whatever_468x60.png‘可能会被屏蔽。

票数 0
EN

Stack Overflow用户

发布于 2012-12-14 20:43:45

既然你用PHP标记了你的问题,我就用php眼镜回答:这样做的问题是广告拦截是客户端的,而通过php添加div是服务器端的。因此,您首先必须知道客户端ans上发生了什么,然后编写您的代码--但这是行不通的。您可能仍然可以通过AJAX请求- but来做这件事,这意味着您将首先发送页面,而不知道…是否激活了广告块

干杯,±…

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13878734

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档