UNPKG

js-detect-incognito-private-browsing

Version:

Javascript Code to Detect Private or Incognito Browsing (with Bot detector) and Paywall

70 lines (55 loc) 2.56 kB
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Test incognito or private browsing</title> <script src="../dist/BrowsingModeDetector.js" type="application/javascript"></script> </head> <body> <div id="message">Testing...</div> </body> <script type="application/javascript"> // You can test the browsing mode using a default callback var myCallback = function (browsingInIncognitoMode, BrowsingModeDetectorInstance) { console.log('Is private?', browsingInIncognitoMode); console.log('Browsing Mode:', BrowsingModeDetectorInstance.getBrowsingMode()); var message = document.getElementById("message"); if (browsingInIncognitoMode) { message.innerHTML = "Incognito/Private browsing detected!"; return; } message.innerHTML = "Normal browsing"; }; // Bots will be ignored: var BrowsingModeDetectorTest1 = new BrowsingModeDetector(); BrowsingModeDetectorTest1.do(myCallback); // or BrowsingModeDetectorTest1.ignoringBots().do(myCallback); // Will return as private/incognito navigation when bots browsing: // BrowsingModeDetectorTest1.notIgnoringBots().do(myCallback); var callbackWhenNormalMode = function (BrowsingModeDetectorInstance) { console.log('callbackWhenNormalMode called when', BrowsingModeDetectorInstance.getBrowsingMode()); }; var callbackWhenIncognitoOrPrivateMode = function (BrowsingModeDetectorInstance) { console.log('callbackWhenIncognitoOrPrivateMode called when', BrowsingModeDetectorInstance.getBrowsingMode()); }; var defaultCallback = function (browsingInIncognitoMode, BrowsingModeDetectorInstance) { console.log('This callback will be called either private or normal mode detected, optional though. Is private or incognito?', browsingInIncognitoMode); if (BrowsingModeDetectorInstance.getBrowsingMode() === BrowsingModeDetectorInstance.BROWSING_NORMAL_MODE) { console.log('Do something if is NORMAL_MODE!'); } else { console.log('Do something if is INCOGNITO_PRIVATE_MODE!'); } }; var BrowsingModeDetectorTest2 = new BrowsingModeDetector(); BrowsingModeDetectorTest2 .setCallbackForNormalMode(callbackWhenNormalMode) .setCallbackForIncognitoOrPrivateMode(callbackWhenIncognitoOrPrivateMode) .do(defaultCallback); // You can test if is bot passing a callback: BrowsingModeDetectorTest2.isBotBrowsing(function (isBot) { console.log('Is Bot:', isBot); }); // Or without callback: // console.log('Is Bot:', BrowsingModeDetector.isBotBrowsing()); </script> </html>