我遇到了一个问题,该问题现在无缘无故地开始发生。我正在玩一个检测您是否正在使用Adblock的块。它在名为var canRunAds = true;
的文件中设置了变量ads.js
,该变量不是真正的广告,但是所有adblocker都会阻止它。接下来,在index.html
中的某处进行测试以查看是否定义了canRunAds
:
<DOCTYPE html>
<html>
<head>
<script type="text/javascript" src="../javascript/ads.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
</head>
<body>
<script type="text/javascript">
if( window.canRunAds === undefined ){
$("#adblock_off").hide();
$(".adblock_off").hide();
console.debug("adblock enabled");
}
else {
$("#adblock_on").hide();
$(".adblock_on").hide();
console.debug("adblock disabled/nonexistant");
}
</script>
<div>
<img src="../images/adblock_off.png" id="adblock_off"></img>
<img src="../images/adblock_on.png" id="adblock_on"></img>
<p class="adblock_off">Thanks for disabling your adblock!</p>
<p class="adblock_on">Disable your adblock, no ads here!<p>
</div>
</body>
这一直对我有用,但是已停止工作。该脚本运行console.debug
,并显示在控制台中,但是元素不会隐藏。有什么解释吗?
PS:所有记录在此GitHub repo