Menú de documentación
Bloqueo de scripts
Bloqueo automático de scripts, marcado manual, categorías de consentimiento, marcadores de posición y compatibilidad con aplicaciones SPA.
Control de scripts
Bloqueo automático (por defecto)
En modo automático, CookieHug detecta y bloquea scripts de terceros, iframes y píxeles de seguimiento mediante coincidencia de dominios por hostname y un MutationObserver. El observador vigila tanto los nuevos elementos del DOM como los cambios del atributo src en elementos existentes. Los dominios de rastreo conocidos se clasifican automáticamente (estadísticas, marketing, preferencias) y se bloquean hasta que se otorga el consentimiento.
Coincidencia por hostname: los patrones se comparan con el hostname de la URL (no con la URL completa), lo que evita falsos positivos: segment.com no bloqueará por accidente my-segment.com. Los patrones que incluyen una ruta (p. ej. facebook.com/tr) se comparan con la URL completa. Las URL relativas (scripts propios) nunca se bloquean.
Servicios cubiertos, entre otros: Google Analytics (incluido region1), Google Tag Manager, Google Ads, Meta/Facebook Pixel, TikTok, Snapchat, LinkedIn, Twitter/X, Pinterest, Bing Ads, Reddit, Quora, Amazon Ads, Hotjar, Clarity, Plausible, Matomo, Amplitude, FullStory, Mouseflow, Fathom, Datadog RUM, LogRocket, YouTube, Vimeo, Google Maps, Intercom, Crisp, LiveChat, Tawk.to, Drift, HubSpot, Zendesk, Freshworks y más.
Los scripts en la lista blanca (p. ej. jQuery, Bootstrap, bibliotecas habituales de CDN) nunca se bloquean.
Importante: el script de CookieHug debe ir en el <head> antes que cualquier script de terceros. Los scripts cargados antes de CookieHug no se pueden bloquear de forma retroactiva.
Marcado manual de scripts
Usa data-cookiehug-consent para controlar manualmente qué scripts requieren consentimiento. Fija el type del script en text/plain para impedir su ejecución hasta que se otorgue el consentimiento.
<!-- Script de estadísticas (externo) -->
<script type="text/plain" data-cookiehug-consent="statistics"
src="https://www.googletagmanager.com/gtag/js?id=G-XXXXX">
</script>
<!-- Script de marketing (en línea) -->
<script type="text/plain" data-cookiehug-consent="marketing">
fbq('init', '123456789');
fbq('track', 'PageView');
</script>
<!-- Script de preferencias -->
<script type="text/plain" data-cookiehug-consent="preferences"
src="https://cdn.example.com/chat-widget.js">
</script>Categorías de consentimiento
| Valor | Descripción |
|---|---|
necessary | Se ejecuta siempre (no requiere consentimiento) |
preferences | Requiere el consentimiento para cookies de preferencias |
statistics | Requiere el consentimiento para cookies estadísticas |
marketing | Requiere el consentimiento para cookies de marketing |
Marcadores de posición para elementos bloqueados
Cuando CookieHug bloquea un iframe (vídeo, mapa, incrustación social, widget de chat), lo sustituye automáticamente por un marcador de posición con estilo que muestra un icono adecuado, explica por qué el contenido está bloqueado e incluye un botón para otorgar el consentimiento de esa categoría concreta.
Usar runScripts() en aplicaciones SPA
En aplicaciones de una sola página, donde el contenido se carga de forma dinámica, llama a CookieHug.runScripts() después de añadir al DOM el nuevo contenido con scripts marcados:
// Después de cargar dinámicamente contenido nuevo
loadPageContent().then(function() {
CookieHug.runScripts();
});