我正在编写一个Greasemonkey脚本,它有一些用户设置(只使用GM_getValue和GM_setValue)。
我希望能够创建脚本的设置页面,并将其添加到@include-d站点。因此,例如,它运行于:
@include http://www.greasemonkeyedsite.com/*
@include about:myScriptConfig
然后脚本将检查要调用的站点的URL。如果它是关于:一个它创建并显示一个设置页面,否则它只是像往常一样运行脚本。
我想出了这样的印象,你可以输入:(任何东西)并且它显示得很好,只有文字跟在about:作为页面内容。我记得上次检查时这个工作,但那是几年前的事。
似乎不过只能使用about:x来显示任意数据。 Firefox只显示“URL无效且无法加载”错误。
我知道数据:URI协议,但它不适合手动输入地址栏不会导致自己的页面。
是否有一些相同的行为?或者我将不得不在greasemonkeyedsite.com的顶角有一个“设置”按钮,隐藏并显示设置div?
答案 0 :(得分:1)
如果拥有永久性网站,您可以在那里创建一个成为Greasemonkey脚本设置页面的URL。这甚至可以是一个方便的URL,允许用户下载脚本(如果他还没有安装它),并且您可以通过这种方式在发布新版本的脚本时为用户提供软件更新。 (只需让Greasemonkey脚本检查设置页面的一些“当前版本”部分。)
正如jnpcl所提到的,可以在浏览器中创建 chrome:// URI ,但据我了解,这需要一个完整的Firefox附加组件而不只是一个Greasemonkey脚本。
如果您没有永久性网站,例如http://www.greasemonekyedsite.com/myGreasemonkeySettingsPage,则可以在受影响的网站上使用指定的网址。然后,您的脚本可以删除其不需要的404页面部分,然后可以在其中插入其设置列表。