Is it possible to determine if Chrome is in incognito mode via a user-script?

前端 未结 3 1873
星月不相逢
星月不相逢 2020-12-30 01:13

I asked this question before but didn\'t make it clear that I meant in user script, not in JavaScript from a webpage.So I\'ll be more clear now.

Is it possible to de

相关标签:
3条回答
  • 2020-12-30 01:17

    To detect whether a window is in incognito mode, check the incognito property of the relevant Tab or Window object. For example:

    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

    0 讨论(0)
  • 2020-12-30 01:19

    Nowadays it's quite easy to do this from a content script. Just use

    if(chrome.extension.inIncognitoContext) {
        //you're incognito
    } else {
        //you're not
    }
    
    0 讨论(0)
  • 2020-12-30 01:25

    If you are developing an Extension then you can use the tabs API to determine if a window/tab incognito.

    More information can be found on code.google.com.

    If you are just working with a webpage or a userscript, it is not easy, and it is designed to be that way. However, I have noticed that all attempts to open a database (window.database) fail when in incongnito, this is because when in incognito no trace of data is allowed to be left on the users machine.

    I haven't tested it but I suspect all calls to localStorage fail too.

    0 讨论(0)
提交回复
热议问题