Подтвердить что ты не робот

Можно ли определить, включен ли Chrome в режиме инкогнито с помощью пользователя script?

I задал этот вопрос до, но не дал понять, что я имел в виду в user script, а не в JavaScript с веб-страницы. Поэтому я буду теперь более ясно.

Можно ли определить, работает ли Google Chrome в режиме инкогнито с помощью user- script (в основном, script выполняется как расширение в браузере, а не script, выполняемое на веб-странице)?

4b9b3361

Ответ 1

Если вы разрабатываете расширение, вы можете использовать API вкладок, чтобы определить, включено ли окно/вкладка.

Более подробную информацию можно найти на code.google.com.

Если вы просто работаете с веб-страницей или пользовательским текстом, это непросто, и она разработана таким образом. Тем не менее, я заметил, что все попытки открыть базу данных (window.database) потерпят неудачу, когда в incongnito, это происходит потому, что когда в инкогнито не остается никаких следов данных на компьютере пользователя.

Я не тестировал его, но я подозреваю, что все вызовы localStorage тоже не работают.

Ответ 2

Чтобы определить, находится ли окно режим инкогнито, проверьте инкогнито свойство соответствующей вкладки или Оконный объект. Например:

var bgPage = chrome.extension.getBackgroundPage();

function saveTabData(tab, data) {
  if (tab.incognito) {
    bgPage[tab.url] = data;       // Persist data ONLY in memory
  } else {
    localStorage[tab.url] = data; // OK to store data
}

http://code.google.com/chrome/extensions/overview.html

Ответ 3

В настоящее время это довольно легко сделать из контента script. Просто используйте

if(chrome.extension.inIncognitoContext) {
    //you're incognito
} else {
    //you're not
}