chrome.fileSystemchrome.tabs
以下是一个简单的实现步骤:
manifest.json
{
"name": "图片上传插件",
"version": "1.0",
"permissions": [
"activeTab",
"storage",
"fileSystem"
],
"background": {
"scripts": ["background.js"],
"persistent": false
},
"browser_action": {
"default_popup": "popup.html"
}
}
popup.html
<!DOCTYPE html>
<html>
<head>
<style>
#upload {
display: none;
}
</style>
</head>
<body>
<button id="upload-btn">上传图片</button>
<input type="file" id="upload" />
<script src="popup.js"></script>
</body>
</html>
popup.js
document.getElementById('upload-btn').addEventListener('click', () => {
document.getElementById('upload').click();
});
document.getElementById('upload').addEventListener('change', (event) => {
const file = event.target.files[0];
if (file) {
// 将文件发送到你的接口
sendFileToServer(file);
}
});
function sendFileToServer(file) {
// 使用fetch或XMLHttpRequest等方法将文件发送到你的接口
}
background.js
chrome.browserAction.onClicked.addListener((tab) => {
chrome.tabs.executeScript({
code: 'document.getElementById("upload").click();'
});
});
sendFileToServerfetchXMLHttpRequest
