Vérification des bloqueurs de publicité

Dans cette rubrique, vous apprendrez à vérifier si un bloqueur de publicité est utilisé.

Utilisation de la méthode usingAdBlocker()

Le lecteur Brightcove dispose d'une méthode qui vérifie si un bloqueur de publicité est utilisé par le navigateur qui lit votre vidéo. Cette méthode utilise AdBlocker (). Une fois qu'il a été déterminé si un bloqueur de publicité a été détecté, vos règles de gestion vous guideront dans les actions à entreprendre. Dans l'exemple suivant, trois publicités s'affichent pendant la vidéo ou, si un bloqueur de publicité est détecté, un message s'affiche sous le lecteur.


Si vous n'avez pas de bloqueur de publicité installé pour le test, dans cet exemple, le message encadré en rouge s'affiche lorsqu'un bloqueur de publicité est détecté :

Mise en œuvre

Le code suivant est un exemple complet d'utilisation de la méthode usingAdBlocker() . En gros, le code fait ce qui suit :

  • Utilise une promesse pour vérifier si un bloqueur de publicité est détecté.
  • Si oui, un paragraphe est créé dynamiquement et inséré dans une div préexistante.
<!doctype html>
<html>

<head>
<meta charset="UTF-8">
<title>Untitled Document</title>
</head>

<body>

  <div style="width: 600px;">
    <video-js id="myPlayerID"
      data-account="1752604059001"
      data-player="ZDaDSLULho"
      data-embed="default"
      controls=""
      data-video-id="5701193190001"
      data-playlist-id=""
      data-application-id=""
      width="600" height="337.5" class="vjs-fluid"></video-js>
  </div>
  <script src="https://players.brightcove.net/1752604059001/ZDaDSLULho_default/index.min.js"></script>
  
  <div id="ad-blocker-note"></div>
  
  <script>
    videojs.getPlayer('myPlayerID').ready(function () {
      var myPlayer = this;
      myPlayer.usingAdBlocker().then( hasBlocker => {
        if (hasBlocker) {
          var newP = document.createElement("p");
          newP = '<strong>Ads will not play as you are using an ad blocker.</strong>';
          document.getElementById("ad-blocker-note").insertAdjacentHTML('afterbegin', newP);
      }
    });
  
  </script>
  
</body>

</html>

Bien entendu, vous pouvez utiliser une instruction if pour la logique JavaScript.

videojs.getPlayer('myPlayerID').ready(function () {
  var myPlayer = this;
  if (myPlayer.usingAdBlocker()) {
    var newP = document.createElement("p");
    newP = 'This ad will not play as you are using an ad blocker.';
    document.getElementById("ad-blocker-note2").insertAdjacentHTML('afterbegin', newP);
  }
});