https://jsfiddle.net/n0hnu5te/1/ this script is a browser incognito mode detector and it's working well on JsFiddle but it is not working on my hosting and localhost. I tried some ways like onload etc. but nothing changed.
Could you explain what is the problem, please?
My Code is:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<title>Title</title>
</head>
<body>
<script>
// Detect private browsing
// Inpired by original gist: https://gist.github.com/cou929/7973956
// But based in general on comment: https://gist.github.com/cou929/7973956#gistcomment-1791792 and other comments
(function (window) {
var on, off;
function Webkit() {
if (window.webkitRequestFileSystem) {
window.webkitRequestFileSystem(window.TEMPORARY, 1, off, on);
return true;
}
}
function Mozilla() {
if ('MozAppearance' in document.documentElement.style) {
const db = indexedDB.open('test');
db.onerror = on;
db.onsuccess = off;
return true;
}
}
function Safari() {
if (/constructor/i.test(window.HTMLElement)) {
// iOS 11
// Origin: https://gist.github.com/cou929/7973956#gistcomment-2272103
try {
window.openDatabase(null, null, null, null);
} catch (e) {
on();
}
// Older Safari
try {
if (localStorage.length)
off();
else {
localStorage.x = 1;
localStorage.removeItem('x');
off();
}
} catch (e) {
// Original gist: https://gist.github.com/jherax/a81c8c132d09cc354a0e2cb911841ff1
// Safari only enables cookie in private mode
// if cookie is disabled then all client side storage is disabled
// if all client side storage is disabled, then there is no point
// in using private mode
navigator.cookieEnabled ? on() : off();
}
return true;
}
}
function IE10Edge() {
if (!window.indexedDB && (window.PointerEvent || window.MSPointerEvent)) {
on();
return true;
}
}
window.isPrivate = function (on_cb, off_cb) {
on = on_cb || function () {};
off = off_cb || function () {};
Webkit() || Mozilla() || Safari() || IE10Edge() || off();
};
})(window);
isPrivate(
function () {document.body.innerHTML = 'Private browsing: <b>ON</b>'},
function () {document.body.innerHTML = 'Private browsing: <b>OFF</b>'}
);
</script>
</body>
</html>
Stackoverflow wants more details but I think I wrote all details. So these paragraph is not important.