Я использую firefox и просматриваю ссылку из этого Веб-сайт. Он легко определяет, использую ли я приватный режим, а затем блокирует меня, если я нахожусь в приватном режиме.
Я искал в stackoverflow.
Этот ответ говорит, что это невозможно. Но этот сайт сделал это возможным.
Другой ответ предлагает
var db = indexedDB.open("test");
db.onerror = function(){alert('Firefox PB enabled')};
db.onsuccess =function(){alert('Not enabled')};
И этот метод отлично работает. Хотя я не уверен, что упомянутый веб-сайт использует ту же технику.
Тогда меня мучают два вопроса:
1- Это единственный способ обнаружить приватный режим в Firefox?
2- Почему Firefox наносит ответный удар своим пользователям? Является ли это частью его дизайна или это ошибка в Firefox?



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


См. этот отчет об ошибке. Чтение этого должно ответить вам на второй вопрос. Они знают проблему, пытались над ней работать, но до сих пор явно безуспешно. Некоторые разработчики считают, что заставлять indexedDB (частично) работать глупо:
Don't expose the API if every operation is going to fail.
Что касается вашего первого вопроса. Существуют и другие методы, и большинство браузеров, по-видимому, восприимчивы. Вот статья от февраля 19 года: Google хочет, чтобы сайтам было сложнее определить, что вы используете режим инкогнито Chrome..
Хочу добавить, что каждый сайт имеет право отказывать посетителям по любой причине, которую посчитает нужной. Посещение веб-сайта — это не право, это привилегия. Например, ваша ссылка на joplinglobe.com у меня не работает, потому что я нахожусь в Европе. Это происходит на многих сайтах в США. Причина в том, что они хотят отслеживать пользователей способом, несовместимым с европейским законодательством (в основном: сообщайте людям, что вы делаете, и предоставляйте или удаляйте личные данные по запросу), сайтам легче блокировать доступ к посетителям, которых они не заботятся о том, чтобы провести день, думая о конфиденциальности своих посетителей.