Greasemonkey可以使用file:// protocol吗?

时间:2013-11-11 15:56:33

标签: greasemonkey filepath url-scheme

我有一个简单的Greasemonkey脚本:

// ==UserScript== 
// @name hello
// @namespace http://www.webmonkey.com 
// @description A test of accessing documents using file:// protocol
// @include     http* file*
// @grant       none
// ==/UserScript==

alert("hi");

只要网址格式为http://...,它的工作正常。如何让脚本在file://...格式的网址上运行?

在“用户设置”部分,我有http://*file://*作为包含的页面,在“脚本设置”部分,我在“包含的页面”框中有http* file*

1 个答案:

答案 0 :(得分:9)

"Greaseable schemes" in the Greasemonkey docs。默认情况下,Greasemonkey会忽略file://协议。

对于使用file://路径的脚本,您需要打开about:config并将extensions.greasemonkey.fileIsGreaseable设置为true

您可能需要重新启动Firefox才能使此设置生效。



此外,// @include http* file*语法无效。你会用:

// @include     http://*
// @include     https://*
// @include     file://*

除了尽可能避免使用此类全局包含。调整脚本只显示您明确定位的域和/或页面。

这:避免意外的副作用,提高性能,并减少被“零日”攻击所淹没的可能性。


我还建议您删除自己编写的脚本的用户设置选项。这只会导致后来的心痛和困惑。 ;)仅对您控制的脚本使用脚本的元数据部分。