我想创建一个Chrome扩展程序,允许用户下载通过一个或多个正则表达式捕获的文本。要了解如何创建此类扩展程序,我已下载并安装了Chrome的Sample Extensions之一:标题为Download Selected Links的文件。
扩展程序图标显示在我的浏览器中,并且正则表达式似乎正常工作(弹出窗口显示了一长串链接,这些链接似乎明显已从我正在使用的选项卡中删除),但是当我点击“全部下载”按钮,弹出窗口关闭,我所选择的链接都没有下载。
答案 0 :(得分:1)
我能够通过删除popup.js
调用window.close()
的代码行来实现它:
// Download all visible checked links.
function downloadCheckedLinks() {
for (var i = 0; i < visibleLinks.length; ++i) {
if (document.getElementById('check' + i).checked) {
chrome.downloads.download({url: visibleLinks[i]},
function(id) {
});
}
}
window.close(); // <-- Delete this line.
}
点击“全部下载”后,弹出窗口将保持打开状态。按钮,下载应该在几分之一秒后开始。我最好的猜测是,使用window.close()
关闭弹出窗口可能会禁用下载开始所需的一些权限。
我进行了一项实验,我选择了所有网址(一个很长的列表,可能是50个或更多),然后点击了“全部下载”,然后点击弹出窗口,这样就可以了它会关闭,前五页左右下载,但后来没有了。
我也遇到了这个看似有用的问题:
How to download a file via a Chrome Content Script? ...但我无法使消息传递方法正常工作(向background.html
发送消息,指示其下载指定的网址。)