Chrome内容脚本

时间:2011-08-20 07:46:19

标签: javascript json google-chrome google-chrome-extension

我不知道是否有人对manifest.json文件的json chrome使用有一些了解......但基本上每当我放一个'?'时在“匹配”的网址中,没有任何东西可以匹配。

例如:

"content_scripts": [ {
  "css" : [ "mod/reformat.css" ],
  "matches": [ "http://www.google.com/search*" ]
} ],

将reformat.css注入google的搜索页面就好了。

但是当我尝试使其更具体时,

"content_scripts": [ {
  "css" : [ "mod/reformat.css" ],
  "matches": [ "http://www.google.com/search?*" ]
} ],

没有任何匹配,即使url确实匹配该模式很好。

有没有人对如何在chrome中使用匹配模式字符串以及如何执行更复杂的匹配有任何潜在的见解?我觉得也许是'?'作为模式匹配的特殊字符,也许有一种方法可以编码或... idk。

1 个答案:

答案 0 :(得分:3)

关于我能找到的匹配模式的官方文件是this onethis one

我复制了对此有用的内容。

  

Glob属性遵循与匹配模式不同,更灵活的语法。可接受的glob字符串是可能包含“通配符”星号和问号的URL。

     

星号(*)匹配任何长度的任何字符串(包括空字符串);问号(?)匹配任何单个字符。

     

例如,glob“http:// ???。example.com / foo / *”匹配以下任何一项:

     

“http://www.example.com/foo/bar”   “http://the.example.com/foo/”

在您的情况下,search?将匹配searchasearchb但不匹配search