是否可以通过插件在Firefox上设置配置设置

是否可以通过插件在Firefox上设置配置设置,firefox,firefox-addon,settings,application-settings,add-on,Firefox,Firefox Addon,Settings,Application Settings,Add On,我正在寻找一种在不提示打印对话框()的情况下从web打印的方法 我发现,这似乎是工作,但它显然会影响所有网站。所以我正在考虑开发一个Firefox插件,使这个配置只影响特定的网站 我对构建Firefox插件一无所知,但如果有可能以这种方式更改设置,我将学习如何操作 所以我的问题是。。是否可以从插件和特定网站在Firefox上设置配置设置 非常感谢。如果你打算开发Firefox插件,你可以“轻松”替换打印按钮,并在普通网站上委托标准打印操作。对于URL列表,即您的网站,您可以临时将print.al

我正在寻找一种在不提示打印对话框()的情况下从web打印的方法

我发现,这似乎是工作,但它显然会影响所有网站。所以我正在考虑开发一个Firefox插件,使这个配置只影响特定的网站

我对构建Firefox插件一无所知,但如果有可能以这种方式更改设置,我将学习如何操作

所以我的问题是。。是否可以从插件和特定网站在Firefox上设置配置设置


非常感谢。

如果你打算开发Firefox插件,你可以“轻松”替换打印按钮,并在普通网站上委托标准打印操作。对于URL列表,即您的网站,您可以临时将print.always\u print\u silent设置为true,然后将其处理完毕

要修改加载项中的首选项,请执行以下操作:

// Get the "accessibility." branch
var prefs = Components.classes["@mozilla.org/preferences-service;1"]
    .getService(Components.interfaces.nsIPrefService).getBranch("accessibility.");

// prefs is an nsIPrefBranch.
// Look in the above section for examples of getting one.
var value = prefs.getBoolPref("typeaheadfind"); 

// get a pref (accessibility.typeaheadfind)
prefs.setBoolPref("typeaheadfind", !value); // set a pref (accessibility.typeaheadfind)

(摘自此)。

一种方法是提供自己的打印提示服务实现。然后,如果要绕过打印对话框,可以检查正在打印的窗口并启用静默打印。您可能需要检索原始服务来处理您不想处理的情况。我找不到太多文档,但有一些相关文档。

如果网站有自己的打印按钮,这将不起作用。此外,在可能的情况下,您应该覆盖printSilent属性,而不是摆弄首选项。