cookie-dialog-monster/js/content.js

51 lines
1.2 KiB
JavaScript
Raw Normal View History

2020-04-19 13:02:48 +00:00
if (typeof chrome.app.isInstalled !== 'undefined') {
// Observer
const observer = new MutationObserver((mutations, observer) => {
2020-04-24 18:29:38 +00:00
mutations.forEach(mutation => {
if (mutation.type === 'childList') {
observer.disconnect();
doMagic();
observe();
2020-04-19 13:02:48 +00:00
}
2020-04-24 18:29:38 +00:00
});
});
2020-04-24 18:29:38 +00:00
// Remover
const doMagic = () => {
const notRemovableElements = Array.from([
// Quantcast
...document.getElementsByClassName("qc-cmp-ui-showing"),
]);
const removableElements = Array.from([
2020-04-25 11:18:00 +00:00
// ENS
document.getElementById("ensNotifyBanner"),
// Quantcast
...document.getElementsByClassName("qc-cmp-ui-container"),
2020-04-25 11:18:00 +00:00
// OneTrust
document.getElementById("onetrust-consent-sdk"),
// Optanon
...document.getElementsByClassName("optanon-alert-box-wrapper"),
]);
notRemovableElements.forEach(element => {
// Quantcast
element.classList.remove("qc-cmp-ui-showing");
2020-04-19 13:02:48 +00:00
});
2020-04-25 11:18:00 +00:00
removableElements.forEach(element => !!element && element.remove());
};
// Observer starts observe when call this function
const observe = () => {
observer.observe(document.body, {
childList: true,
subtree: true,
//...
});
};
// Then...
doMagic();
observe();
}