Многие пользователи сети Интернет наверняка слышали о таком плагине как AdBlock plus. Добавив этот плагин себе в браузер можно раз и навсегда избавиться от навязчивой рекламы. Зачем же тогда бороться с AdBlock plus, спросите Вы? Если Вы обычный пользователь, то бороться не зачем, но если же Вы владелец сайта, на котором размещена реклама, то это меняет дело. Если посетители сайта будут блокировать рекламу, то доход от показа рекламы может существенно сократиться.
Метод борьбы, приведенный в этой статье, достаточно прост и заключается в выводе на экран ненавязчивого сообщения с просьбой отключить плагин для данного сайта с помощью JS скрипта. Некоторые веб-мастера называют такой скрипт анти AdBlock или AdBlock детектор.
Шаг 1. HTML
Достаточно добавить блочный элемент с атрибутом class в любое место страницы, предварительно разместив рекламный код внутри блока.
<div class="adb"> Рекламный код тут </div>
Шаг 2. JS
Нужно разместить этот код в файле с расширением js
var ads = "adb" var msg = '<div style="border: 1px dashed #f00; padding: 5px;"><b>Adblock Detected</b></div>'; onload=function(){ // заглушка для IE, т.к. нет функции getElementByClassName if (document.getElementsByClassName == undefined) { document.getElementsByClassName = function(className) { var hasClassName = new RegExp("(?:^|\s)" + className + "(?:$|\s)"); var allElements = document.getElementsByTagName("*"); var results = []; var element; for (var i = 0; (element = allElements[i]) != null; i++) { var elementClass = element.className; if (elementClass && elementClass.indexOf(className) != -1 && hasClassName.test(elementClass)) results.push(element); } return results; } } blocked = 0; //получаем массив всех рекламных элементов var ad_nodes = document.getElementsByClassName(ads); for(i in ad_nodes){ // проверяем высоту i-го блока if (ad_nodes[i].offsetHeight == 0){ blocked = 1; ad_nodes[i].innerHTML = msg; // выводим сообщение на экран } } }
Данный скрипт проверяет высоту всех рекламных блоков на странице и, если высота какого-либо блока равна нулю, выводит сообщение на экран.
Итоги
Установив данный скрипт на свой сайт можно попросить пользователя добавить сайт в белый список, тем самым помочь ресурсу. Стоит помнить, что при выключенном JavaScript, скрипт работать не будет и пользователь не увидит Вашего сообщения.
Если Вам понравилась статья, то я буду рад, если Вы поделитесь ссылкой с друзьями в соцсетях. Удачи в работе!
Получайте новые статьи блога прямо себе на почту
Интересный материальчик =)
Хороший скрипт на чистом javascript! Спасибо автору! Еще котиков грустных можно добавить, для жалостливости Но тут уже кому как нравится…
Хороший скрипт, спасибо. Но, думаю плакательные строки размещать не нужно, можно с пользой использовать, реферальные баннеры можно, популярное, твиттер приколы и много чего еще ))