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

Вопросы по монетизации веб-сайта или повышению его доходности.
Ответить
Аватара пользователя
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>

Ответить