Ни для кого не секрет, что Adblock Plus – это самое популярное расширение для браузера, которым пользуются миллионы людей по всему миру. Блокируя отвлекающую и назойливую рекламу, Adblock заметно упрощает просмотр сайтов, видео на YouTube, etc. Но в тоже время отключенный показ рекламы лишает заработка владельцев сайта. В данной статье будет рассказано, как определить пользователя с включенным Adblock Plus и как попросить его отключить на вашем сайте.

Принцип работы Adblock Plus довольно прост: при загрузке страницы если какой-то элемент подходит под заданный фильтр, элемент удаляется со страницы. На этом и будет построен наш де-адблоколизатор. Создадим простой HTML блок, в котором разместим код рекламного блока, например код Google Adsense:

<div class="google_advert">
    <!-- Здесь размещается код рекламного блока -->
</div>
<div class="no_advert" style="display:none;">
    <!-- Блок, который будет показываться вместо блока с рекламой -->
</div>

Структура вашего сайта может отличаться, главное, чтобы блок с рекламой и “запасной” блок не были расположены внутри одного родительского элемента. Далее после загрузки нашей страницы определяем, не изменились ли параметры блока с рекламой. Создадим небольшой обработчик, срабатывающий после загрузки страницы (для его работы у вас должен быть подключен jQuery любой версии):

// После окончательной загрузки страницы
$(window).load(function () {
    // Проверяем не занулилась ли высота блока с рекламой
    if ($('.google_advert').height() == 0) {
        // Показываем скрытый блок — альтернативу блоку с рекламой
        $('.no_advert').show();
    }
});

В качестве события $('.no_advert').show() может быть любой другой код, который вам нужен, например такой:

setInterval('alert("Отключите Adblock!")', 1000);