javascript - 从网页检测我自己的 Firefox 扩展

标签 javascript firefox-addon detection

我正在尝试找到一种简单的方法来检测我的扩展是否安装在 Firefox 3.6 中。这应该从网页完成,可能使用 javascript。

我读过很多博客说我应该尝试从我的扩展程序加载图像。由于我拥有该扩展程序,并且我可以编写代码,所以这似乎是一个不必要的 hack。

我也考虑过为网络文档设置一个全局变量,但我还没有实现。我以为我可以写:

top.window.content.document.hasMyPlugin = true

但这似乎不起作用(没有定义 hasMyPlugin)。我只在访问我的域时添加此变量(我添加了一个 WebProgressListener 并检查了主机属性),因此全局 namespace 污染应该不是问题。

有什么想法吗?

更新

我尝试访问变量的方式很简单 if(hasMyPlugin)if(document.hasMyPlugin)...也许我访问它的方式不对?

最佳答案

一种简单的方法是让您的扩展程序对用户定义的事件作出 react 。您的网页在适当的事件目标上分派(dispatch)事件(如果没有更好的,您可以使用该文档),然后您的扩展程序的事件监听器可以验证网页地址并执行操作。您的事件监听器至少可以在事件上调用 preventDefault();然后网页可以调用 getPreventDefault() 来查看您的扩展是否存在。

关于javascript - 从网页检测我自己的 Firefox 扩展,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5067375/

相关文章:

javascript - 网站是否可以跟踪用户的 chrome 扩展程序或他们的行为?

python - 如何在小于目标大小的区域上进行 ROI 池化?

opencv - 使用opencv进行形状检测的形状

javascript - javascript 在 Rails 布局中的放置

javascript - window.content.mozInnerScreenY 值在 Firefox 33.1 中不起作用

javascript - 如何同时动态显示和隐藏div?

javascript - 在 XUL 的文本框中捕获换行符

javascript - 引用错误 : browser is not defined

javascript - 如何在重新加载或注销后保持复选框状态?

javascript - 解决 webpack 中的外部子模块依赖