用于检测adblock的脚本无效

时间:2015-09-24 20:52:25

标签: javascript jquery adblock

有人可以帮我这个剧本吗?它是检测adblock。我的头部<script src="/js/ads.js"></script>(文件夹中的空ads.js)。 Adblock会阻止此加载,因此不会在页面上。然后我有下面的代码,将检测脚本是否加载。由于某种原因,它无法正常工作,仍然显示图像。我有人写下面的脚本以便它以1秒的间隔检查广告3次,但它似乎一次无限检查3次。有人可以帮我正确地工作吗?而且,如果它检测到它确实正确加载,它将不会将图像粘贴到div中吗?

<script>
$(document).ready(function () {
    var count = 3;
    for (var i = 0; i < count; i++) {
        setInterval(function () {
            if (window.canRunAds === undefined) {
                $('#StEQBidTjU').prepend('<img src="/miscimg/mZKoARJXcF.jpg" id="PtZZtkYjaR" />')
                $('#AbHPbbbxyl').prepend('<img src="/miscimg/6hZ4nqcBZd.jpg" id="PLyCMzOHpx" />');
            }
        }, 1000);
    }
});
</script>

2 个答案:

答案 0 :(得分:1)

您需要跟踪每个间隔中的计数,并在它运行3次后将其清除。

&#13;
&#13;
$(document).ready(function () {
    var count = 3,
        interval = setInterval(function () {
          if (--count < 0) {
            clearInterval(interval);
          }
          if (window.canRunAds === undefined) {
            $('#StEQBidTjU').prepend('<img src="/miscimg/mZKoARJXcF.jpg" id="PtZZtkYjaR" />')
            $('#AbHPbbbxyl').prepend('<img src="/miscimg/6hZ4nqcBZd.jpg" id="PLyCMzOHpx" />');
          }
        }, 1000);
});
&#13;
&#13;
&#13;

答案 1 :(得分:0)

现在您甚至不需要执行所有这些操作来检测AdBlock用户,您可以使用名为ABDetector的简单JS脚本实现此目的。 以下是如何使用它:
- 下载/克隆项目,上传文件abDetector.min.js
   - 将其放入<head>
    <script type="text/javascript" src="abDetector.min.js"></script>
   - 在想要向AdBlock用户显示消息的任何地方使用此选项:
    <div id="ab-message" style="display: none">Your message here!</div>

然后你就完成了。查看Github上的项目。