[JavaScript] Jak wykryć czy ktoś korzysta z AdBlock?

noadblock
JavaScript Opublikowano: 12/04/2011

O autorze

Jestem webmasterem/webdeveloperem
z pasji. Lubię to co robię i chcę dzielić się wiedzą z innymi osobami.
Specjalizuję się w technologiach związanymi z CSS, JS, PHP.

W dzisiejszych czasach reklama na stronach internetowych jest podstawą finansowej działalności wielu stron w Internecie. Lecz bardzo często zdarza się, że osoby zarządzające daną stroną przesadzają z ilością reklam na niej zamieszczonymi. Strona przestaje być czytelna, a fakt, że z każdym przeładowaniem strony należy szukać przycisku zamykającego reklamę popup, która zasłania treść strony, sprawia że ludzie zaczynają myśleć jak temu zapobiec. Dlatego powstał taki dodatek jak AdBlock, który można zainstalować w wielu popularnych przeglądarkach takich jak: Mozilla Firefox czy Google Chrome.
Jak wykryć zatem, czy ktoś korzysta z takiego mechanizmu blokującego reklamy?
Na chwilę obecną istnieje taki mechanizm. Nazywa się AdBlock Detector i jest możliwy do pobrania ze strony twórcy.
Na pewno nie jest to rozwiązanie idealne, bo wystarczy zablokować obsługę JavaScript w przeglądarce i ten mechanizm wykrywania już nie zadziała. Bazując na informacjach z tego artykułu, można stwierdzić, że około 10% polskich internautów blokuje reklamy na stronach. Nie wszyscy jednak blokują obsługę JavaScript, dlatego u nich mechanizm wykrywania zadziała.

Implementacja mechanizmu

Na początek należy dołączyć plik JS z mechanizmem wykrywania blokady reklam internetowych, a następnie na samym końcu sekcji BODY należy dopisać poniższy kod:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<script type="text/javascript">
// funkcja obsługująca przypadek gdy wykryto AdBlock
function _enabled() {
    alert('detected');
}
 
// funkcja obsługująca przypadek gdy nie wykryto AdBlock
function _disabled() {
    alert('not detected');
}
 
//nazwa funkcji stanu wykrytego
var _abdDetectedFnc = '_enabled';
 
//nazwa funkcji stanu niewykrytego
var _abdNotDetectedFnc = '_disabled';
</script>
<script type="text/javascript" src="http://adblockdetector.com/script.php"></script>

Jak widac powyżej, została przedstawiona sytuacja gdy zdefiniowano funkcje obsługujące dwa przypadki: wykryty i niewykryty. Dzięki temu możemy sami zdefiniować jak zachowywać się będzie strona w każdym z przypadków.
Nie ma złotego środka, co do sposobu obsługi strony przez użytkownika posiadającego AdBlocka. Każdy webmaster może po swojemu utrudnić korzystanie z takiej strony.

4 komentarze/y

Napisz komentarz

Komentarze są moderowane. Po akceptacji przez administratora zostaną wyświetlone na stronie.

  • Imię:
  • Email:
  • Strona www:
  • Treść komentarza:

Page optimized by WP Minify WordPress Plugin