Dokumentationsmenü
JavaScript API
Das JavaScript-SDK von CookieHug: das CookieHug-Objekt, Eigenschaften zu Einwilligung und Status, Auslesen der Einwilligung und Methoden (show, hide, renew, withdraw, submit…).
JavaScript-SDK-Referenz
CookieHug stellt ein globales Objekt window.CookieHug bereit, über das Sie auf den Einwilligungsstatus, Methoden, Ereignisse und Callbacks zugreifen.
CookieHug.consent
| Eigenschaft | Typ | Beschreibung |
|---|---|---|
consent.necessary | boolean | Immer true — notwendige Cookies lassen sich nicht ablehnen |
consent.preferences | boolean | Ob der Nutzer Präferenz-Cookies akzeptiert hat |
consent.statistics | boolean | Ob der Nutzer Statistik-Cookies akzeptiert hat |
consent.marketing | boolean | Ob der Nutzer Marketing-Cookies akzeptiert hat |
consent.method | string | null | "explicit", wenn der Nutzer entschieden hat, null bei ausstehender Entscheidung |
Status-Eigenschaften
| Eigenschaft | Typ | Beschreibung |
|---|---|---|
CookieHug.consented | boolean | true, wenn der Nutzer optionale Cookies akzeptiert hat |
CookieHug.declined | boolean | true, wenn der Nutzer alle optionalen Cookies abgelehnt hat |
CookieHug.hasResponse | boolean | true, wenn der Nutzer entschieden hat (Zustimmung oder Ablehnung) |
CookieHug.doNotTrack | boolean | true, wenn im Browser Do Not Track aktiviert ist |
CookieHug.regulations
Die Auflösung erfolgt in zwei Schritten: (1) Der Zeitzonen-Fallback läuft sofort beim Laden des Skripts; wird eine europäische Zeitzone erkannt, wird regulations.region zusätzlich auf die Pseudo-Region "EEA" gesetzt, damit nachfolgende gtag('consent','default',{region})-Aufrufe korrekt greifen. (2) Der Server-Resolver GET /api/runtime/regulations (Cloudflare CF-IPCountry) läuft parallel zum Laden der Konfiguration — liefert er eine region, ist sie maßgeblich und überschreibt den Zeitzonen-Fallback vollständig (inklusive aller *Applies-Flags), sodass VPN- oder Zeitzonen-Abweichungen korrigiert werden.
| Eigenschaft | Typ | Beschreibung |
|---|---|---|
regulations.gdprApplies | boolean | true, wenn der Besucher in Europa ist (DSGVO-Region) |
regulations.ccpaApplies | boolean | true, wenn der Besucher in den USA ist (CCPA-Region) |
regulations.lgpdApplies | boolean | true, wenn der Besucher in Brasilien ist (LGPD-Region) |
Beispiel: Einwilligungsstatus auslesen
// Prüfen, ob der Nutzer bereits entschieden hat
if (window.CookieHug.hasResponse) {
console.log('Der Nutzer hat eine Entscheidung getroffen');
if (window.CookieHug.consent.statistics) {
// Analytics darf initialisiert werden
initAnalytics();
}
if (window.CookieHug.consent.marketing) {
// Marketing-Pixel dürfen geladen werden
loadMarketingPixels();
}
}
// Geltende Regulierungen prüfen
if (window.CookieHug.regulations.gdprApplies) {
console.log('Für diesen Besucher gilt die DSGVO');
}Methoden
CookieHug.show()
Erzwingt die Anzeige des Einwilligungsbanners.
CookieHug.show();CookieHug.hide()
Blendet das Einwilligungsbanner programmatisch aus.
CookieHug.hide();CookieHug.renew()
Zeigt das Banner erneut an, damit der Nutzer seine Einstellungen ändern kann. Ideal für einen Link „Cookie-Einstellungen“.
// Beispiel: eigener Link zu den Cookie-Einstellungen
document.getElementById('cookie-settings')
.addEventListener('click', function() {
CookieHug.renew();
});CookieHug.withdraw()
Widerruft die Einwilligung des Nutzers. Dabei werden alle Einwilligungsdaten gelöscht (localStorage und HTTP-Cookie), Google Consent Mode auf denied zurückgesetzt, ein consent_update-Event in den dataLayer geschrieben, der Status des ScriptBlockers zurückgesetzt und die Seite automatisch neu geladen, damit alle Skripte den neuen abgelehnten Status respektieren.
CookieHug.withdraw();CookieHug.submitCustomConsent(preferences, statistics, marketing)
Übermittelt eine eigene Einwilligungsauswahl programmatisch.
| Parameter | Typ | Beschreibung |
|---|---|---|
preferences | boolean | Präferenz-Cookies erlauben oder ablehnen |
statistics | boolean | Statistik-Cookies erlauben oder ablehnen |
marketing | boolean | Marketing-Cookies erlauben oder ablehnen |
// Nur Statistik akzeptieren, Marketing und Präferenzen ablehnen
CookieHug.submitCustomConsent(false, true, false);
// Alles akzeptieren
CookieHug.submitCustomConsent(true, true, true);
// Alle optionalen Kategorien ablehnen
CookieHug.submitCustomConsent(false, false, false);CookieHug.getScript(url, async, callback)
Lädt ein externes Skript dynamisch nach. Praktisch, um Skripte erst nach erteilter Einwilligung zu laden.
| Parameter | Typ | Beschreibung |
|---|---|---|
url | string | URL des zu ladenden Skripts |
async | boolean | Ob asynchron geladen werden soll |
callback | function | Wird nach dem Laden des Skripts aufgerufen |
if (CookieHug.consent.statistics) {
CookieHug.getScript(
'https://www.google-analytics.com/analytics.js',
true,
function() {
console.log('Analytics geladen');
}
);
}CookieHug.runScripts()
Wertet alle mit data-cookiehug-consent markierten <script>-Tags aus und führt jene aus, die zum aktuellen Einwilligungsstatus passen. Wird nach der Einwilligung automatisch aufgerufen, lässt sich in SPAs aber auch manuell nach dem Nachladen von Inhalten aufrufen.
CookieHug.runScripts();