无法使用firefox jpm sdk page-mod inlclude匹配页面

时间:2016-04-21 19:20:32

标签: javascript firefox sdk jpm

我正在写一个firefox插件,来自我原来的greasemonkey用户脚本,它取代了eztv网站与ajax链接的链接,因此当你点击show的观看/未观看的链接时,它会向eztv发送一个ajax请求,并在成功时删除该行。 Everthing工作正常,但如果我指定include只能在eztv网站上运行,Firefox的JPM SDK Page-Mod永远不会与网站匹配。

require('sdk/page-mod').PageMod({
include: [/(https?:\/\/eztv\.(it|ch|ag)\/myshows)/, '*.eztv-proxy.net/myshows'],
contentScriptWhen: 'ready',
contentScriptFile: ["./jquery-2.2.3.min.js", './main.js'],
contentStyleFile: "./eztv.css",
attachTo: ["existing", "top"],    
});

如果我更改为include: "*",则脚本可以正常加载。我已经测试了正则表达式和它的接缝以匹配https://eztv.ag/myshows而没有任何东西,但有些如何在插件中不起作用。

有人能发现问题吗?

1 个答案:

答案 0 :(得分:0)

终于找到了我的问题的答案,正则表达式错过了一个结束斜杠。 此外,如果您使用带通配符的字符串,例如:“* .eztv.it”,则无法指定要匹配的路径或查询,它只匹配域名。如果您需要匹配特定于域的路径,则需要使用RegExp。