- Este blog, cuando no detecta una función de bloqueo de anuncios, recomienda a los visitantes instalar un bloqueador de anuncios confiable como uBlock Origin
- Este mensaje de recomendación fue diseñado para no interferir con la experiencia del usuario y, una vez cerrado, no vuelve a aparecer
- La implementación usa el script
nativeads.js y un <div> cargado de nombres de clases relacionadas con anuncios, de modo que si el bloqueador de anuncios bloquea el elemento o las solicitudes de red, el mensaje no se muestra
- El mensaje, una vez cerrado, se recuerda con una cookie; con CSS aparece pequeño en un lado de la pantalla sin tapar el contenido, y no se muestra en navegadores con JavaScript desactivado
- No hay forma de detectar el bloqueo por DNS, así que el autor explica que lo implementó en su lugar como una ventana informativa no invasiva y fácil de cerrar
Por qué se necesita un mensaje que recomiende usar bloqueador de anuncios
- Los anuncios en internet hacen perder tiempo a los usuarios, y la industria publicitaria tiene un impacto negativo en todo el entorno de internet
- Como los ingresos de los sitios bajan muchísimo, muchos sitios web terminan convertidos en páginas de baja calidad saturadas de anuncios
- Si quieres ayudar a los creadores, en vez de ver anuncios es mucho más efectivo apoyarlos directamente (incluso 1 dólar sirve)
Objetivo de diseño del mensaje que recomienda usar bloqueador de anuncios
- Como la mayoría de los usuarios perciben la publicidad como parte de la experiencia de internet, el autor muestra un mensaje directamente en el sitio
- El mensaje "No adblocker detected. Consider using an extension like uBlock Origin to save time and bandwidth. Click here to close." aparece en pequeño en la esquina inferior derecha de la página
- No tapa el contenido y, si se cierra, deja de mostrarse
- Si la ventana es pequeña, el mensaje no se muestra
- La razón para mencionar solo una extensión específica (uBlock Origin) es que muchos usuarios conocen bloqueadores de anuncios a través de anuncios, además de los riesgos y el carácter fraudulento de bloqueadores comerciales
- Los bloqueadores de anuncios promocionados con anuncios terminan generando ingresos a costa del usuario
Implementación y detalles técnicos
- En el HTML existe un área
div para el mensaje del bloqueador de anuncios, con varios nombres de clases relacionadas con publicidad
- Un archivo JavaScript llamado
/nativeads.js se encarga de agregar el mensaje
- Garantiza, con base en cookies, que el mensaje se muestre solo una vez
- Al hacer clic en "Click here to close.", oculta el
div y actualiza la cookie
- Con CSS se define la posición visual y el estilo del mensaje
- Solo se fija en la esquina inferior derecha cuando hay suficiente espacio en pantalla
- Si el bloqueador de anuncios bloquea ese elemento
div o el archivo nativeads.js (eliminándolo o bloqueando la solicitud), el mensaje mismo no se renderiza
- Mediante varios nombres de clases relacionadas con anuncios, busca inducir a que la mayoría de los bloqueadores eliminen el
div
- En particular, incluso las extensiones centradas en bloqueo de red (como adblock lite, etc.) hacen que el mensaje desaparezca si bloquean la solicitud de red del script
- Existe la limitación de que no puede detectar el bloqueo de anuncios basado en DNS
- En navegadores que no soportan JavaScript no hace falta bloqueador de anuncios, así que el mensaje tampoco se muestra
- Incluso sin aplicar CSS, el mensaje funciona a nivel funcional (se muestra sin estilo)
3 comentarios
Recomiendo el navegador Brave
Comentarios de Hacker News
ublockorigin.com, que está enlazado en el aviso, no pertenece a Raymond Hill, el verdadero desarrollador de uBlock Origin. A simple vista parece bien intencionado y la interfaz está decente, pero no parece estar bajo control de Hill y podría convertirse en un posible punto de amenaza, como malware. Los canales oficiales de Hill son https://github.com/gorhill/uBlock. Como referencias útiles están README.md y la Wikidisplay:noneydisplay:block, pensaba reservar el espacio con el mismo tamaño y mostrar el mensaje correcto, o incluso dejar inicialmente un espacio vacío para evitar que un fallo muestre un mensaje incorrectoEn mi blog también, desde hace tiempo, mostraba un mensaje recomendando instalar un bloqueador de anuncios cuando detectaba que no había uno; me alegra saber que no era el único.