← Tous les articles

Tutoriels

Acceptez automatiquement les bannières cookies sans cliquer

Les bannières de consentement aux cookies sont le péage du web moderne. Vous payez le même péage sur chaque site, chaque jour. Une courte règle JavaScript JustZix peut le payer pour vous — en cliquant sur le bouton accepter (ou refuser) dès que la bannière apparaît.

Comment fonctionnent les bannières

La plupart des dialogues de consentement sont un bloc HTML ordinaire injecté dans la page. Ils contiennent généralement un bouton au texte prévisible — « Accepter », « Tout accepter », « J'accepte », « Compris » — ou un id/classe reconnaissable. Comme le JS de JustZix s'exécute dans le contexte de la page, vous pouvez trouver ce bouton et le cliquer par programmation.

La version la plus simple : cliquer par texte du bouton

Cette règle parcourt chaque bouton de la page et clique le premier dont l'étiquette correspond à une liste de phrases d'acceptation. Elle est insensible à la casse et supprime les espaces.

var ACCEPT = ['accept all', 'accept', 'i agree', 'agree', 'got it', 'allow all'];

function clickConsent() {
  var buttons = document.querySelectorAll('button, a, [role="button"]');
  for (var i = 0; i < buttons.length; i++) {
    var label = (buttons[i].textContent || '').trim().toLowerCase();
    if (ACCEPT.indexOf(label) !== -1) {
      buttons[i].click();
      return true;
    }
  }
  return false;
}

clickConsent();

Gérer les bannières qui se chargent tard

Beaucoup de gestionnaires de consentement (la page les exécute via un gestionnaire de balises) injectent la bannière une seconde ou deux après le chargement. JustZix exécute votre JS une fois par chargement de page, donc un seul appel peut manquer une bannière tardive. Utilisez un MutationObserver pour guetter les nouveaux nœuds et réessayer, puis arrêtez-vous une fois réussi.

var ACCEPT = ['accept all', 'accept', 'i agree', 'agree', 'got it', 'allow all'];

function clickConsent() {
  var buttons = document.querySelectorAll('button, a, [role="button"]');
  for (var i = 0; i < buttons.length; i++) {
    var label = (buttons[i].textContent || '').trim().toLowerCase();
    if (ACCEPT.indexOf(label) !== -1) { buttons[i].click(); return true; }
  }
  return false;
}

if (!clickConsent()) {
  var observer = new MutationObserver(function () {
    if (clickConsent()) observer.disconnect();
  });
  observer.observe(document.documentElement, { childList: true, subtree: true });
  setTimeout(function () { observer.disconnect(); }, 10000);
}

La garde setTimeout déconnecte l'observateur après dix secondes pour qu'il ne tourne jamais indéfiniment sur une page sans bannière.

Cibler une plateforme de consentement spécifique

Si vous ne naviguez que sur une poignée de sites, ciblez le bouton exact par sélecteur — c'est plus rapide et évite les clics accidentels. Inspectez la bannière dans les DevTools, copiez l'id ou la classe, et utilisez-le directement.

function clickById(selectors) {
  for (var i = 0; i < selectors.length; i++) {
    var el = document.querySelector(selectors[i]);
    if (el) { el.click(); return true; }
  }
  return false;
}

clickById([
  '#onetrust-accept-btn-handler',
  '.cookie-consent__accept',
  'button[data-testid="accept-all"]'
]);

Vous préférez refuser à la place ?

Les utilisateurs soucieux de leur vie privée peuvent inverser la logique — il suffit d'échanger la liste de phrases. Beaucoup de bannières exigent désormais un bouton « Tout refuser » par la loi, donc ceci fonctionne sur beaucoup de sites.

var REJECT = ['reject all', 'reject', 'decline', 'necessary only', 'only necessary'];

var buttons = document.querySelectorAll('button, a, [role="button"]');
for (var i = 0; i < buttons.length; i++) {
  var label = (buttons[i].textContent || '').trim().toLowerCase();
  if (REJECT.indexOf(label) !== -1) { buttons[i].click(); break; }
}

Bonnes pratiques

Récupérez une copie testée dans les exemples prêts à l'emploi, ou téléchargez JustZix si vous débutez. Associez ceci à notre guide sur le déploiement automatique du contenu masqué pour une lecture plus fluide.

Notez cet article

Aucune note — soyez le premier.

Essayez vous-même

Installez JustZix et collez n'importe quel snippet de cet article. Deux minutes de zéro à une règle fonctionnelle sur tous vos appareils.

Obtenir JustZix

Fonctionnalités · Comment ça marche · Exemples · Cas d'usage