从chrome扩展程序弹出窗口上传文件

时间:2014-03-28 00:39:09

标签: google-chrome-extension

我想让用户从chrome扩展程序弹出窗口中选择并上传文件。但是,只要文件选择器对话框打开,弹出窗口就会失去焦点并立即关闭。从这个answer,解决方法似乎是我可以将对话框打开逻辑移动到后台页面,这不受失去焦点的影响。

我已经尝试了答案,但文件选择器根本没有出现。实际发生fileChooser.click()事件确实很奇怪(我能够通过为fileChooser创建一个点击监听器来验证它)。以下是仅关注问题的简化版本。

popup.html

<button id="uploadCSV">Upload CSV</button>

popup.js

$('#uploadCSV').click(function() {
  chrome.extension.sendMessage({ action: 'browseAndUpload' });
});

background.js

var fileChooser = document.createElement('input');
fileChooser.type = 'file';
chrome.extension.onMessage.addListener(function (msg) {
  if (msg.action === 'browseAndUpload') {
    fileChooser.click();
  }
});

0 个答案:

没有答案