检测谷歌浏览器扩展程序

5
我正在寻找一种方法来检测我正在构建的浏览器扩展程序是否在我的网站中运行,并且需要在用户未安装该扩展程序时进行提醒。我已经能够在Firefox中实现这一点,但我想知道是否有办法在Google Chrome中实现?即使有一个hack可以解决问题,我也没关系。
2个回答

2
当然。在扩展中创建一个特定于您网站的内容脚本,并使其在DOM中添加一个不可见标记,例如:
$('body').append('<div style="display: none;" class="extension_enabled" />');

在页面中,可以在文档完全加载后设置一个短暂的超时时间来检查这个问题,例如:

在文档完全加载后,设置一个短暂的超时时间来检查此问题,例如:

$(function() {
  setTimeout(function() {
    if ($('.extension_enabled').length > 0) {
      alert('Installed!');
    } else {
      alert('Not installed.');
    }
  }, 500);
});

注意:出于简单起见,本文使用jQuery格式的代码。当然你也可以使用原生JavaScript。


2
官方的Google Chrome扩展程序开发人员指南有一篇涉及此内容的文章

1
很遗憾,该链接已经失效。截至2014年2月27日,此答案适用于Chrome版本32.0.1700.107 m:https://dev59.com/questions/42015IYBdhLWcg3w9wh0#13734347。 - J E Carter II

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接