所以我想写一些代码,这样我可以在我的网站上按下按钮时截取页面的截图.代码有效,但唯一的问题是我必须首先点击chrome扩展,然后我可以点击按钮来获取截图.我想这是因为没有调用活动选项卡.有任何想法吗?
这是错误:运行tabs.captureVisibleTab时未选中runtime.lastError:'activeTab'权限无效,因为尚未调用此扩展.
的manifest.json
"permissions": [
"tabs",
"*://google.com/*"
],
Run Code Online (Sandbox Code Playgroud)
background.js
var id = 100;
// Listen for a click on the camera icon. On that click, take a screenshot.
function takeScreenshot() {
chrome.tabs.captureVisibleTab(null, function(screenshotUrl) {
.....
}
chrome.extension.onRequest.addListener(function(request, sender) {
takeScreenshot();
});
Run Code Online (Sandbox Code Playgroud)
contentscript1.js
contentScriptMessage = "Take a screenshot";
document.addEventListener("hello", function(data) { //When overlay is clicked
chrome.extension.sendRequest({message: contentScriptMessage}); //call background script
})
Run Code Online (Sandbox Code Playgroud)
当点击图像时,我从网页传递一条消息(调用函数go()),如下所示:
var go = function() {
var event = document.createEvent('Event');
event.initEvent('hello');
document.dispatchEvent(event);
}
Run Code Online (Sandbox Code Playgroud)