如果用户下载特定类型的文件(比方说.doc),除了在unknownContentType Firefox对话框中保存并打开之外,我还应该再显示一个项目(即可能的操作)。
我该怎么做?
更新。查看FlashGot插件来源,我提取了以下内容:
chrome.manifest用于
overlay chrome://mozapps/content/downloads/unknownContentType.xul chrome://flashgot/content/DMOverlayFx.xul
overlay chrome://global/content/nsHelperAppDlg.xul chrome://flashgot/content/DMOverlayMoz.xul
为什么他们有两个叠加?什么秒?而且,如何理解用户选择了我的选项?
DMOverlayFx.xul
<?xml version="1.0" encoding="UTF-8"?>
<overlay id="DMOverlayFF"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
<script type="application/x-javascript" src="Common.js"/>
<script type="application/x-javascript" src="DMOverlay.js"/>
<radiogroup id="mode" >
<vbox insertbefore="save" id="synoextcontainer" flex="1">
<hbox flex="1">
<radio id="synoext-dmradio" label="Download with Synology NAS" />
</hbox>
</vbox>
</radiogroup>
</overlay>
DMOverlayMoz.xul
<?xml version="1.0" encoding="UTF-8"?>
<overlay id="DMOverlayMoz"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
<script type="application/x-javascript" src="Common.js"/>
<script type="application/x-javascript" src="DMOverlay.js"/>
<radiogroup id="mode" >
<hbox position="3" >
<radio id="synoext-dmradio" label="Download with Synology NAS"/>
</hbox>
</radiogroup>
</overlay>
答案 0 :(得分:1)
要覆盖的重要文件是unknownContentType.xul。您可以在此处查看示例:http://code.google.com/p/firedownload/source/browse/chrome/content/unknownContentType-overlay.xul。这会在对话框中添加一个新复选框,但您可以使用相同的方法添加新的单选按钮。您需要在叠加层中包含一个新的JS文件(例如本示例中的unknownContentType-overlay.js),您可以在其中覆盖单选按钮的标准处理。处理新选项并将其他选项移交给现有实现(查看helperApps.js以了解标准处理的工作原理)。