问题描述
我有具有 downloads.onChanged 侦听器的 webextension。此侦听器应删除更改其名称的下载。在 chrome 上它可以工作,但在 Firefox 上它只在下载完成时触发。 示例:
browser.downloads.onChanged.addListener(checkFile);
for (var i = 0; i < arg.url.length; i++) {
let name = arg.filename[i];
browser.downloads.download({
url: arg.url[i],filename: name
},id => {
checkdownloadList[id] = name;
downloadList[id] = name;
})
}
function checkFile (file) {
if (checkdownloadList[file.id] !== undefined) {
delete checkdownloadList[file.id];
browser.downloads.search({
id: file.id
},function(downloadItems) {
if (downloadItems[0].filename.replace(/\\/gi,"/").includes(downloadList[downloadItems[0].id])) {
browser.downloads.resume(downloadItems[0].id);
} else {
browser.downloads.erase({id: downloadItems[0].id});
}
});
我无法暂停下载,因为 downloads.onCeeated
事件也不起作用。并在下载 id 收到结果后暂停,出现错误“无法暂停,因为下载中断”。在 chrome 上,所有这些方法都有效。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)