将Chrome扩展程序限制为某些网址?

amp*_*343 15 google-chrome google-chrome-extension

有没有办法限制Chrome扩展程序仅在某些网址上运行?

假设我希望扩展只在域名是Amazon.com时运行.我意识到你可以检查脚本的顶部,然后只有在检查匹配时才执行其余的脚本.

但是,你可以阻止扩展运行吗?

amp*_*343 15

Welp,它表示我会在发布问题后找到答案,即使我已经被困了一段时间......

http://code.google.com/chrome/extensions/content_scripts.html

在manifest.json中:

"content_scripts": [
    {
      "matches": [...urls...],
      "exclude_matches": [...urls...],
      "css": [...]
    }
]
Run Code Online (Sandbox Code Playgroud)

  • FYI这不会阻止脚本运行,它会阻止chrome将其注入不匹配的页面. (6认同)

Wer*_*ght 5

作为用户,使用Chrome 71(或甚至之前)使用chrome:// flags /#extension-active-script-permission(您可能需要启用扩展脚本的用户许可标记)允许您右键单击扩展图标并选择"这可以读取和更改网站数据"然后您可以选择:

  • 单击扩展名时
  • 在current-domain-name.com上
  • 在所有网站上(默认)

在此输入图像描述

这样,您可以将扩展限制为仅在某些域上非常快速地运行.

  • 限制作为_用户_,还是作为_开发者?_ (2认同)
  • 我相信从上下文来看:1)这是关于StackOverflow的问题(而不是超级用户),2)原始作者对“如何通过扩展清单实现它”自我回应,这里的意图是开发人员题。至少必须注意**开发人员无法控制此机制。**尽管由于开发人员需要意识到这一点并可能需要通知用户,所以它并不是完全不合时宜。 (2认同)