Popup Blocker de AdGuard es un script de usuario que bloquea todas las ventanas emergentes no deseadas en diferentes navegadores.
Funciona en Chrome, Firefox, Edge, Safari, IE10+, etc., básicamente en cualquier navegador que admita administradores de scripts de usuario. Las excepciones son algunos de los navegadores más antiguos que no son compatibles con la API que utilizamos y es posible que el script no sea completamente funcional allí.
El Bloqueador de ventanas emergentes no aplica el enfoque de reglas de filtrado a la detección de ventanas emergentes. En cambio, agrega una capa adicional sobre las API nativas del navegador que se utilizan para crear ventanas emergentes. De esta manera, estas API solo se pueden llamar cuando son causadas por una entrada manual, y no por secuencias de comandos emergentes o emergentes. Esto permite bloquear ventanas emergentes incluso en sitios web que intentan eludir los bloqueadores de anuncios habituales utilizando WebRTC o variando los servidores de anuncios.
Se explica por sí mismo pero es importante: si un clic provocaría que se mostrara una ventana emergente, no solo se bloquea la ventana emergente, sino que también se procesa el clic inicial como lo sería sin la ventana emergente.
Otros scripts en la página no pueden detectar que se está utilizando el Bloqueador de ventanas emergentes, excepto al intentar abrir una ventana emergente. Esto evita cualquier posible elusión del Bloqueador de ventanas emergentes.
Versión de lanzamiento actual : https://userscripts.adtidy.org/release/popup-blocker/2.5/popupblocker.user.js
Versión beta actual: https://userscripts.adtidy.org/beta/popup-blocker/2.5/popupblocker.user.js
Popup Blocker está siendo desarrollado por el mismo equipo que desarrolla AdGuard, y AdGuard para Windows puede servir como administrador de scripts de usuario. Si es usuario de AdGuard, vaya a Configuración – Extensiones – Agregar extensión e ingrese allí la URL del archivo .js del Bloqueador de ventanas emergentes deseada. De esta manera puedes usarlo literalmente en cualquier navegador.
Por otro lado, Popup Blocker es un proyecto independiente, puedes usarlo con cualquier otro administrador de scripts de usuario como Greasemonkey, Tampermonkey o Violentmonkey. Asegúrese de que uno de ellos esté instalado en su navegador para poder utilizar el Bloqueador de ventanas emergentes (simplemente ingrese la URL del script en la barra de direcciones, el administrador lo detectará automáticamente).
Puede administrar una lista de dominios incluidos en la lista de permitidos y dominios silenciados en una página de opciones dedicada:
Para informar un error, vaya a esta página y cree un nuevo problema.
¡Puedes ayudarnos a traducir el Bloqueador de ventanas emergentes a otros idiomas! Nuestro proyecto en Crowdin está abierto a contribuciones públicas.
Las compilaciones de desarrollo tienen el registro habilitado y anulan muchas más API del navegador para realizar una introspección del comportamiento del script emergente/popunder. No es apto para uso normal.
La prueba unitaria para la compilación de desarrollo está aquí.
Para construir el proyecto, siga estos pasos:
Instale las dependencias locales ejecutando el siguiente comando en la terminal:
yarn install
Para compilar, ejecute el siguiente comando en la terminal:
$ NODE_ENV=<channel> ts-node tasks/builder --target=<target>
Reemplace channel
con el canal deseado, que puede ser dev
, beta
o release
. Además, reemplace target
con el objetivo de construcción deseado, que puede ser
userscript
: crea un script de usuario para un canal específico;options
: crear una página de opciones, que es una página independiente, que proporciona al usuario una manera conveniente de administrar sitios web permitidos y silenciados;tests
– pruebas de compilación;bundle
: crea y agrupa todo lo anterior para un canal específico.Alternativamente, puedes ejecutar los siguientes comandos en un estilo minimalista:
yarn userscript-<channel>
yarn options-page
yarn tests
yarn bundle:dev
yarn bundle:beta
yarn bundle:release
Si está compilando para desarrollo, tenga en cuenta que el resultado no se minimizará y contendrá registros en la consola del navegador.
Las versiones beta y de lanzamiento se minimizarán y se eliminarán todos los códigos de registro.
Compile usando la página de opciones, vaya a la carpeta de compilación mediante el comando cd
y ejecute el servidor local de su elección.
yarn options-page
Modifique isOptionsPage
en option-init.ts
para permitir una dirección y un puerto específicos. Después de eso, asegúrese de que el script de usuario (por ejemplo, en AG) contenga esta dirección y puerto también.
Para ver la página de opciones, asegúrese de que AG filtre su página de depuración.
Una forma sencilla de probar el script es visitar http://code.ptcong.com/better-js-popunder-script/
Simplemente haga clic en cualquier lugar de esa página para obtener una ventana emergente, o use enlaces específicos para obtener una ventana emergente/popunder/tabup/etc.
Comportamiento esperado: las nuevas ventanas se bloquean con una notificación en la esquina superior derecha.
La página de opciones se implementa a través de GitHub Pages con acciones manuales Deploy popup blocker beta
e Deploy popup blocker release
para las versiones beta
y release
, respectivamente.