使用浏览器扩展程序检测打开特定网站

时间:2012-03-29 15:50:02

标签: browser google-chrome-extension firefox-addon safari-extension

我们有一个网络应用程序,并希望浏览器检测打开新链接的尝试。一个典型的用例是该人开启了我们的应用程序;他们点击了他们电子邮件中的链接 - 而不是在新窗口中打开此链接,我们想在我们的应用程序中打开一个内部选项卡。

当然,如果没有延期,这是不可能的;但是可以使用FF / Chrome / Safari / IE的浏览器扩展吗?我们需要扩展来检查针对简单匹配创建的新选项卡的URL - 如果存在匹配以防止创建新选项卡,请在我们使用的选项卡中运行js请求并将视图切换为那个标签。

1 个答案:

答案 0 :(得分:1)

对于Safari,答案是肯定的。您可以收听beforeNavigate事件。该事件具有url属性。如果您再拨打event.preventDefault(),则不会创建新标签页。

一个潜在的问题是,您可能无法区分由其他应用程序(例如电子邮件客户端)打开的新标签和浏览器本身打开的标签(例如,当用户命令点击链接到在新标签中打开它)。如果这对你很重要。