Как узнать о блокировке рекламы?

Вопросы по монетизации веб-сайта или повышению его доходности.
Ответить
Аватара пользователя
umloki
Эксперт
Эксперт
Сообщения: 575
Зарегистрирован: 20 июн 2007, 10:03
Откуда: Россия
Контактная информация:

Как узнать о блокировке рекламы?

Сообщение umloki » 14 июл 2011, 13:32

немного в сторону, но в тему - давно хочу придумать "программный модуль" который будет определять, что в браузере пользователя заблокирован показ рекламы - сразу будет выдаться диалоговое окно с предложением оплатить посещение/просмотр сайта :wall: :wink: .
Люблю стабильное разнообразие

mgarkunov
Эксперт
Эксперт
Сообщения: 1928
Зарегистрирован: 11 фев 2009, 13:42
Откуда: Москва
Контактная информация:

Re: Как узнать о блокировке рекламы?

Сообщение mgarkunov » 14 июл 2011, 15:05

По-умолчанию сделать вывод данного диалогового окна, но выводить после загрузки всей страницы. И если реклама загрузилась, то блокировать выдачу данного окна, т.е. рекламные модуль должен будет изменить значение для старта.

Добавлено спустя 1 час 14 минут 17 секунд:
Уже есть очень элегантное решение.
1. Ставим рекламный код в div

Код: Выделить всё

<div class="myTestAd" style=" text-align:center;margin:10px">
   <!-- advert code goes here -->
</div>


2. Добавляем проверку через JS

Код: Выделить всё

<script type="text/javascript">
   function TestPage() {
      if ($('.myTestAd').height() == 0)
         alert("You are blocking my beautiful adverts, you swine!\nFear my near-limitless wrath");
   }

   $(TestPage);
</script>

Вместо алерта можно делать редирект на другую страницу или что-то другое.

Источник: http://thepcspy.com/read/how_to_block_adblock/

Добавлено спустя 3 минуты:
Проверку лучше ставить перед </body>, чтобы она была после загрузке всей страницы, а иначе будут ошибки и неверное срабатывание.
Михаил Гаркунов, Партнерская сеть Миксмаркет
Affiliate marketing в Рунете

Аватара пользователя
wmk
Сообщения: 21
Зарегистрирован: 12 апр 2011, 00:40

Re: Как узнать о блокировке рекламы?

Сообщение wmk » 14 июл 2011, 15:06

Вариант на jQuery

Код: Выделить всё

$(document).ready(function(){
      if($("#mixkt_4294929227").html() != null)
      {
         alert('Реклама есть');
      }
      else
      {
         alert('Реклама отключена');
      }
});

mgarkunov
Эксперт
Эксперт
Сообщения: 1928
Зарегистрирован: 11 фев 2009, 13:42
Откуда: Москва
Контактная информация:

Re: Как узнать о блокировке рекламы?

Сообщение mgarkunov » 14 июл 2011, 15:15

При использовании нескольких блоков лучше использовать переменную, чтобы в конце страницы выдать один алерт.
Михаил Гаркунов, Партнерская сеть Миксмаркет
Affiliate marketing в Рунете

Аватара пользователя
Spawn
Эксперт
Эксперт
Сообщения: 202
Зарегистрирован: 27 окт 2006, 14:29
Откуда: Новосибирск
Контактная информация:

Re: Как узнать о блокировке рекламы?

Сообщение Spawn » 13 сен 2011, 11:21

если без jquery, то можно offsetheight:

допустим, сам рекламный блок -

Код: Выделить всё

<div id="mix_block_15646454"></div>


тогда ниже места, в котором в него пытается записаться реклама:

Код: Выделить всё

<script type="text/javascript">
   var myad = document.getElementById('mix_block_1294931336');
              if (myad.offsetHeight == 0)
                myad.innerHTML = "Здесь была бы интересная реклама, но т.к. вы её блокировали - вы должны отправить sms с кодом...";
</script>

Ответить