Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Проверка установлено расширение Alexa (https://javascript.ru/forum/misc/74232-proverka-ustanovleno-rasshirenie-alexa.html)

klevuu 23.06.2018 21:03

Проверка установлено расширение Alexa
 
Здравствуйте, уважаемые форумчане какой день бьюсь с такой проблемой, нужно проверить установлено расширение Alexa traffic rankings у пользователя или нет, на буржуйских сайтах встречал проверку и не на одном, подскажите пожалуйста в какую сторону копать, может кто сталкивался или себе реализовывал?

klevuu 23.06.2018 22:41

пробую вот так у себя все равно не выходит хотя картинка есть
<script>
  var img; 
  img = new Image(); 
  img.src = "chrome-extension://cknebhggccemgcnbidipinkifmmegdel/images/icon-19x19.png"; 
  img.onload = function() { 
    $('#messagealx').html( 'Расширение установлено' );
  }; 
  img.onerror = function() { 
    $('#messagealx').html( 'Расширение не установлено' );
  };
</script>

Aetae 23.06.2018 22:49

klevuu, поставь src= после назначения onload. Если не поможет, значит дело в каких-нить очередных политиках безопасности, надо искать по косвенным признакам.
Если есть сайты которые уже определяют - просто посмотри их код.

klevuu 24.06.2018 00:29

вот с этого что то можно вытянуть для проверки
function dispChromeSiteInfo(host) {
  document.write( '<iframe name="minisiteinfo" ' + 
          'src="http://www.alexa.com/minisiteinfo/' + host + '?offset=5&version=alxg_20100607" ' +
                  'style="padding:0px; overflow:hidden;" '+
          'width="400px" ' +
          'height="350px" ' +
          'marginwidth="5px" ' +
          'marginheight="5px" ' +
          'frameborder="0" ' +
          'scrolling="no" ' +
          '></iframe>' ); 
};

function enableAll() {
  if (localStorage.privacyPolicyAccepted != "true")
    showWelcome();
  window.close();
};

function showWelcome() {
  chrome.tabs.create({url:"html/welcome.html"});
};

function onLoad() {
  if ( localStorage.privacyPolicyAccepted == "true" ) {
    chrome.tabs.getSelected(null, function(tab) {
      var url = tab.url;
      if (url.match("http://\w*.?alexa.com/siteinfo/.*"))
        var host = url.split("/")[4].split("?")[0].split("#")[0];
      else if (url.match("http://\w*.?alexa.com/site/linksin/.*"))
        var host = url.split("/")[5].split("?")[0].split("#")[0];     
      else
        var host = url.split("/")[2].split("?")[0].split("#")[0];
      dispChromeSiteInfo(host);
    });
  } else
    enableAll();
};

$(window).load(onLoad);


Часовой пояс GMT +3, время: 13:55.