För att få aviseringar när vissa händelser inträffar kan du använda följande JavaScript-metoder:
__cmp("addEventListener",["eventname",callableFunction,capture],null)__cmp("removeEventListener",["eventname",callableFunction,capture],null)__tcfapi("addEventListener",2, callableFunction)__tcfapi("removeEventListener",2, callableFunction, listenerId)
CMP kan anropa följande händelser:
|
Evenemang |
Beskrivning |
|
|
CMP-koden har laddats och stubkoden har tagits bort. I detta skede har CMP ännu ingen information om samtycket. |
|
|
CMP har laddat klart sina inställningar. Om en samtyckessträng redan fanns kan samtyckesdata nu läsas från CMP. |
|
|
CMP visar samtyckesskärmen |
|
|
CMP tar bort samtyckesskärmen |
|
|
CMP visar sidan med anpassade val |
|
|
CMP har samlat in samtycke eller så har en befintlig cookie hittats. Samtyckesdata kan nu läsas från CMP. |
|
|
Besökaren har gett sitt samtycke till alla leverantörer/ändamål |
|
|
Besökaren har avvisat alla leverantörer och syften |
|
|
Besökaren har gett anpassat samtycke (godkännanden och avvisningar) |
|
|
Samtyckesskärmen visas, berättigat intresse har fastställts för denna besökare. |
|
|
Besökaren har accepterat ett dynamiskt innehållsobjekt. Leverantörs-ID för det accepterade objektet finns i subtypvariabeln. |
|
|
Olika händelser för IAB GPP-standarden |
tcfv2 |
Olika händelser för IAB TCF-standarden |
|
|
När laddningen är klar (se händelse |
|
|
När laddningen är klar (se händelse |
Händelsehanterare definieras som:
var handler = function (eventname, cmpobject, subtype){…}
Varning: Använd inte cmpobject längre. Funktionen är föråldrad. Använd API-anrop istället.
Exempel:
<script>
function getInfos(e,o)
{
var result = __cmp('getCMPData');
/*... do something with result ...*/
}
__cmp("addEventListener",["consent",getInfos,false],null);
</script>
Observera att kommandot addEventListener i IAB TCF v2 endast reagerar på en delmängd av händelser.
Exempel
Omdirigera besökaren till en annan webbplats om inget samtycke ges
Observera att detta beteende inte rekommenderas och kan leda till juridiska problem!
<script>
function getInfos(e,o)
{
location.href = "https://www.mywebsite.com/alternative-content.html";
}
__cmp("addEventListener",["consentrejected",getInfos,false],null);
</script>
Visa ett meddelande om besökaren avvisade
<div id="mymessage" style="display:none; position:fixed; left:calc(50% - 300px); top:calc(50% - 200px); width:600px; height:400px; background-color: #fff0c7; padding: 20px; box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.25);"><b>Please consider</b><br>Our website is mainly financed by online advertising. Without consent we will not be able to show you tailored ads and our ad revenue will be much lower. As we respect your choice we like to ask you, if you maybe like to donate 1 EUR instead? This will help us keep the quality of our service up.<br>
<br>
<a href="donate.html"><b>Donate 1 EUR now!</b></a><br>
<br>
<a href="#" onclick="document.getElementById('mymessage').style.display = 'none';">No, thanks!</a>
</div>
<script>
function getInfos(e,o){ document.getElementById('mymessage').style.display = 'block';}
__cmp("addEventListener",["consentrejected",getInfos,false],null);
</script>
Skjut ned sidinnehållet när samtyckesfönstret öppnas
<script>
var iscmpopen = false;
function handleSize()
{
if(iscmpopen)
{
document.body.style.paddingTop = document.getElementById('cmpbox').offsetHeight + 'px';
}
else
{
document.body.style.paddingTop = 'inherit';
}
}
function pushDown(e, o)
{
iscmpopen = true;
handleSize();
}
function pushUp(e, o)
{
iscmpopen = false;
handleSize();
}
window.addEventListener('resize', handleSize, false);
window.addEventListener('load', handleSize, false);
__cmp('addEventListener', ['consentscreen', pushDown, false], null);
__cmp('addEventListener', ['consentscreenoff', pushUp, false], null);
</script>