使用插件OSX获取浏览器中所有选项卡的URL

时间:2013-08-18 09:14:50

标签: google-chrome firefox plugins safari firebreath

我希望从设备上运行的浏览器获取所有打开的URL,而无需开发扩展。我不想开发扩展有两个原因。首先是Chrome,用户必须转到chrome商店才能安装扩展程序。其次,我必须为所有安装的浏览器编写扩展名。

所以我开始研究Scripting Bridge,但事实证明它不适用于没有GUI脚本的Chrome(用户必须启用辅助设备)。

相反,我正在考虑构建一个插件。但事情是插件只能支持某些mime类型。如何确保从任何网页调用我的插件?除非所有网页都有一个通用的mime类型,否则我不知道如何解决这个问题。

无论如何,你们认为这是最好的方式吗?或者是否有其他方法可以获取所有打开的标签页的URL。

1 个答案:

答案 0 :(得分:2)

将插件自动添加到所有页面的唯一方法是使用扩展名,没有插件可以在所有页面中加载以了解除给定插件之外的其他页面实例已加载。

插件不知道浏览器,只知道它们插入的页面(或加载处理,如果插件处理mimetype,如.pdf)。有关插件与扩展程序功能的更多信息,请参阅http://npapi.com/extensions

因为插件只知道某个页面,这意味着他们无法找到同一浏览器进程中的其他页面,包括选项卡。他们根本没有任何方法可以做到这一点,这是设计的; API开发人员不希望任何人能够拥有一个插件来处理媒体类型,该插件可能会以某种方式绑定到另一个选项卡中的银行站点窗口,而您却没有意识到这一点。当然,某些扩展框架可能允许你找到一种方法来做到这一点,但插件本身不能。