@frame25/adblock-detect

1.3.1 • Public • Published

AdBlock Detect library

It's just ES6 class that has simple logic for detecting AdBlock Extention in browser.

Installation

You can install it with npm:

npm install @frame25/adblock-detect

IMPORTANT! To add it into your project you should use Babel and Webpack, because it's written in ES6 style. In this case you do as usual:

import AdBlockDetect from '@frame25/adblock-detect';

Options

Class constructor gets an object with config. Here are properties:

new AdBlockDetect({
  debug: false, // if is true, on each step you'll have a message in console
  pixelClass: 'any classes', // you can add some extra custom css classes to pixel if need
  pixelStyle: 'background: red;', // adding custom extra styles, BUT do NOT add "pointer-events: none", "visibility: hidden" and "display: none"
  loopLimit: 5, // count of checking cycles; default is recomended
  loopInterval: 100, // interval time in milliseconds; default is recomended
  onDetected: function(){}, // if AdBlock in browser callback
  onNotDetected: function(){}, // if NO AdBlock in browser callback
  onEnd: function(){}, // finish callback in each case; return result boolean value with AdBlock detection
})

Full example

After creating an object from class, you should init it. So it could be like this:

import AdBlockDetect from '@frame25/adblock-detect';
const abd = new AdBlockDetect({ 
  /* your config */ 
  onEnd (result) { window.adblockDetected = result }
});
abd.init(); // to start process

Easy check

If you don't need any custom stuff, and just want simple one-row result, here it is:

AdBlockDetect.go() // after 500ms you'll have window.AdBlockEnabled === true or false

This method returns a promise, so you can do like this:

AdBlockDetect.go().then(adblockIsOn => {
  // adblockIsOn is Boolean
  if (adblockIsOn) console.log('Damn it\'s enabled!')
  else console.log('Get the party started!')
})

Readme

Keywords

Package Sidebar

Install

npm i @frame25/adblock-detect

Weekly Downloads

647

Version

1.3.1

License

ISC

Unpacked Size

6.97 kB

Total Files

4

Last publish

Collaborators

  • frame25