【问题标题】:Using a browser extension to detect opening a specific site使用浏览器扩展来检测打开特定站点
【发布时间】:2012-03-29 15:50:02
【问题描述】:

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

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

【问题讨论】:

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


    【解决方案1】:

    对于 Safari,答案是肯定的。您可以收听beforeNavigate 事件。该事件具有url 属性。如果您随后调用event.preventDefault(),则不会创建新选项卡。

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-02-05
      • 2020-02-17
      • 1970-01-01
      • 2012-06-25
      • 2011-06-04
      • 2022-09-25
      • 1970-01-01
      相关资源
      最近更新 更多