gpt4 book ai didi

firefox - 如何将文件输入元素放入 Firefox 插件的首选项面板中?

转载 作者:行者123 更新时间:2023-12-01 09:56:27 26 4
gpt4 key购买 nike

我想让用户在我的插件的首选项窗口中上传图像(到插件的文件夹)。

这是我当前的 prefpane:

<prefpane id="tpt-pane" label="Settings">
<preferences>
<preference id="pref_upload" name="addonname.upload" type="file"/>
</preferences>

<hbox align="center">
<label control="upload" value="The file: "/>
<input type="file" preference="pref_upload" id="upload" />
</hbox>
</prefpane>

有什么方法可以做到这一点(有变通办法)吗?

最佳答案

好的,这是一个完整的插件示例,向您展示如何做到这一点:

GitHub :: Noitidart / PortableTester

点击那里的 XPI 并下载它,然后将它拖到 firefox 上进行安装。或者只使用 AMO :: GitHub Extension Installer从上面的 repo 链接安装扩展

所以我所做的是创建一个 options.xul文件。而在 install.rdf确保你没有设置 <em:optionsType>对任何事。

然后是options.xul的内容这是:

<?xml version="1.0" ?>
<vbox xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
<setting title="Image Upload" type="file" pref="extensions.PortableTester@jetpack.image_upload" oninputchanged="alert('path of image is:' + this.value + '\nyou can access this image from your addon or anywhere else by getting the pref value so like this:\n`Services.prefs.getCharPref(\'extensions.PortableTester@jetpack.image_upload\') == `' + Services.prefs.getCharPref('extensions.PortableTester@jetpack.image_upload'))">
Select image to upload
</setting>
</vbox>

所以在安装插件后转到插件面板。 Ctlr shift A.

然后点击选项。你会看到这个:

现在点击浏览并选择一个文件,然后它会提示你,我使用oninputchangedoptions.xul 中看到的属性上面,提醒值。它将图像的路径保存到名为 extensions.PortableTester@jetpack.image_upload 的首选项中您可以将其更改为您想要的任何名称,但保留 extensions.前缀。

您现在可以访问 oninputchanged 中的值命令 this.value或来自任何地方,任何插件或任何地方,使用 Services.prefs.getCharPref('extensions.PortableTester@jetpack.image_upload')

关于firefox - 如何将文件输入元素放入 Firefox 插件的首选项面板中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25845957/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com