Hoppa till innehållet

JavaScript events och funktioner

Om ni inte använder attribut i script-taggen kan ni använda JavaScript-events för att ladda in script baserat på besökarens val.

Lyssna efter eventet CookieConsent för att köra er kod:

window.addEventListener('CookieConsent', function (event) {
    console.log('CookieConsent:', event.detail);
});

Detta event skickar med detaljer om händelsen. Här är ett exempel på payload i event.detail:

{
    added : ['marketing'],
    removed : [],
    current : ['undefined','necessary','marketing'],
    trigger : 'initial'
}

Förklaring av egenskaper:

  • added innehåller kategorier där samtycke har lagts till som en följd av händelsen.
  • removed innehåller kategorier där samtycke har dragits tillbaka som en följd av händelsen.
  • current innehåller alla samtycken som finns efter händelsen.
  • trigger anger vad som utlöste händelsen och kan ha följande värden:
    • initial anger att detta är det första samtycket från en besökare efter att ett val har gjorts i dialogen.
    • pageload anger att detta är en efterföljande sidladdning där ett samtycke redan finns.
    • update anger att besökaren har öppnat cookieinställningarna och ändrat sitt samtycke.

Här är ett exempel på kod som körs när det finns samtycke för marknadsföringscookies:

window.addEventListener('CookieConsent', function (event) {
    if(!event.detail.current.includes('marketing'))
        return;
        
    console.log('We have marketing consent!');
});

Vill ni lyssna på när en besökare tar tillbaka ett samtycke kan ni göra så här:

window.addEventListener('CookieConsent', function (event) {
    if(event.detail.trigger !== 'update')
        return;
        
    console.log('Added consents',event.detail.added);
    console.log('Removed consents',event.detail.removed);
});

Ni kan även kontrollera om ett samtycke redan finns med kod:

if (cookieTractor.consent.contains(cookieTractor.category.functional)){
    console.log('Samtycke finns för funktionella cookies');
}
if (cookieTractor.consent.contains(cookieTractor.category.statistical)){
    console.log('Samtycke finns för statistikcookies');
}
if (cookieTractor.consent.contains(cookieTractor.category.marketing)){
    console.log('Samtycke finns för marknadsföringscookies');
}

Mer information om vårt SDK finns på sidan om JavaScript API.

Support

Har ni frågor om installationen? Kontakta oss gärna på info@cookietractor.se.