Я работаю над базовым сценарием обнаружения Adblock, и у меня есть кое-что, что похоже на должно работать.После создания элемента на странице с идентификатором #adblock_detection_image
в Chrome с Adblock Plus, выполнение $('#adblock_detection_image').css('display')
дает мне значение none
, а выполнение $('#adblock_detection_image').css('visibility')
дает мне значение hidden
.Когда я запускаю их в браузере без Adblocker, я получаю inline
и visible
вместо этого, как и следовало ожидать.
Найдя это, я пошел дальше и попытался найти решение.Однако проблема заключается в том, что код, который должен срабатывать при простом обнаружении блокировщика рекламы, не срабатывает.Фрагмент кода показан ниже.
function isUsingAdblocker(classOfAd)
{
if(parseInt($(classOfAd).css('height')) <= 0)
{
return true;
}
else
{
$('body').append('<img id="adblock_detection_image" src="/textlink-ads-banner-advert-service.jpg" style="width: 0; height: 10px; position: relative; top: -1000px; left: -1000px;"/>');
if($('#adblock_detection_image').css('display') != 'inline')
{
return true;
}
else if($('#adblock_detection_image').css('visibility') != 'visible')
{
return true;
}
else
{
return false;
}
}
}
$(document).ready(function(){
if(isUsingAdblocker('#Ad-One')){
$('#Ad-One').html('<em>Please</em> disable your ad-blocking software to help support this website.<br/><span>(It\'s our primary source of income!)');
$('#Ad-One').css('height', '90px');
}
});