用于捕获屏幕截图的最简单的扩展版本如下:
清单.json
{
"manifest_version": 2,
"name": "Screenshot",
"version": "20200507.1",
"permissions":[
"activeTab"
],
"browser_action": {
"default_popup": "popup.html"
}
}
popup.html
<!DOCTYPE html>
<html>
<body>
<button id="capture">Capture</button>
<script src="popup.js"></script>
</body>
</html>
popup.js
document.getElementById("capture").addEventListener('click', event => {
chrome.tabs.captureVisibleTab(dataURI => {
chrome.tabs.create({url: dataURI});
});
window.close();
});
作为未打包的扩展加载到 Vivaldi 浏览器中,它可以毫无怨言地工作。打开一个选项卡,其中包含任何处于活动状态的选项卡的屏幕截图。但是,加载到 Chrome 中的相同扩展程序完全没有任何作用,也不会引发任何错误。这里缺少什么?我能在这段代码和他们的示例代码之间找到的唯一区别是这是一个弹出窗口而不是后台脚本。