Greasemonkey脚本:获得匹配的包含规则

时间:2014-03-04 03:30:24

标签: javascript url greasemonkey

我有一个带有一些@include规则的Greasemonkey脚本。我想确切地知道哪一个匹配,因为脚本的行为必须略有不同,具体取决于URL。

有没有办法通过Greasemonkey的API找到它?我知道我可以通过DOM获取这些信息,但我希望Greasemonkey的API提供类似的东西。

1 个答案:

答案 0 :(得分:3)

Greasemonkey不会告诉脚本它匹配哪个规则。 相反,您的脚本可以测试properties of the window.location object。 EG:

if (/stackoverflow\.com/i.test (location.hostname) ) {
    alert ("Yay!");
}
else if (/quora\.com/i.test (location.hostname) ) {
    alert ("Uh oh!");
}


如果您真的想要,可以循环遍历the GM_info objectincludesmatches数组,并尝试确定当前{{1}将触发哪一个但是,这不是万无一失的,并且没有必要(除了,可能是对剧本的过度热心的代码审查)。