Por ejemplo, este deshabilita la función si se detecta AdBlock plus y funciona. ¿Hay alguna manera de evitar esto?
Hay muchos scripts y proyectos para ayudar a los propietarios de sitios a detectar AdBlock Plus, pero creo que está interesado en cómo funcionan.
La idea es simple. El sitio web carga un archivo JavaScript llamado ads.js
(o cualquier otro nombre que AdBlock Plus encuentre "atractivo"), que contiene:
var amIHere = document.createElement("div");
amIHere.setAttribute("id", "amIHere");
document.body.appendChild(amIHere);
Si tiene AdBlock Plus, bloqueará la ejecución de este script y no se creará el div. Luego usan un archivo JavaScript con nombre normal que contiene una comprobación simple de la existencia del div
if (document.getElementById('amIHere')){
alert("You're Alright");
}else{
alert("You're using AdBlock Plus");
}
Otros métodos es cargar un div con el id ads
o que tiene una clase text-ads
que AdBlock Plus detecta como anuncios e intenta ocultar, luego usa JavaScript para verificar si el div está oculto o no.
Esto le ayudará a detectar la mayoría de los usuarios de AdBlock Plus, pero debido a la naturaleza de este problema (todo sucede en el lado del cliente), en teoría, un usuario puede eludir todos sus controles y detectores.
Como "usuario avanzado", cuando un sitio web que necesito usar me dice que debo deshabilitar Adblock Plus, simplemente lo deshabilito y lo habilito después de que termine. Realmente no quiero gastar tiempo y recursos para encontrar una manera de evitarlo. Así que puedes asumir que la gran mayoría de tus usuarios no se molestarán. A se les molestará que los obligue a desactivarlo, pero abandonarán su sitio web o simplemente desactivarán AdBlock Plus.
Lea otras preguntas en las etiquetas firefox