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.

Status-Eigenschaften

EigenschaftTypBeschreibung
CookieHug.consentedbooleantrue, wenn der Nutzer optionale Cookies akzeptiert hat
CookieHug.declinedbooleantrue, wenn der Nutzer alle optionalen Cookies abgelehnt hat
CookieHug.hasResponsebooleantrue, wenn der Nutzer entschieden hat (Zustimmung oder Ablehnung)
CookieHug.doNotTrackbooleantrue, 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.

EigenschaftTypBeschreibung
regulations.gdprAppliesbooleantrue, wenn der Besucher in Europa ist (DSGVO-Region)
regulations.ccpaAppliesbooleantrue, wenn der Besucher in den USA ist (CCPA-Region)
regulations.lgpdAppliesbooleantrue, wenn der Besucher in Brasilien ist (LGPD-Region)

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.

ParameterTypBeschreibung
preferencesbooleanPräferenz-Cookies erlauben oder ablehnen
statisticsbooleanStatistik-Cookies erlauben oder ablehnen
marketingbooleanMarketing-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.

ParameterTypBeschreibung
urlstringURL des zu ladenden Skripts
asyncbooleanOb asynchron geladen werden soll
callbackfunctionWird 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();