Я хочу создать расширение chrome, которое захватывает скриншот любой выбранной части веб-страницы. Я создал холст на скриншоте. js, который установлен в фоновом режиме. js с chrome .executeScript. проблема в том, что я хочу установить параметр функции из фона. js и получить его на скриншоте. js, но он не работает. код ниже. Как я могу получить параметр функции в executetescript из фона. js? Пожалуйста, помогите мне или предложите мне другой способ.
background. js
function test(){
chrome.tabs.executeScript(null, {file:"./scripts/screenshot.js"})
}
function createScreenshot(callback) {
chrome.tabs.captureVisibleTab(null, { format: "png" }, callback);
}
chrome.runtime.onMessage.addListener(function (request, sender, sendResponse) {
if (request.chromeAction === "screenshot") {
createScreenshot(function (dataURL) {
chrome.runtime.sendMessage({ param1: dataURL})
test();
});
return true;
}
});
снимок экрана. js
chrome.runtime.onMessage.addListener(function(message, sender, sendResponse) {
var param1 = message.param1;
console.log(param1)
function createImage(param1) {
function createCanvas(canvasWidth, canvasHeight) {
var canvas = document.createElement("canvas");
canvas.width = canvasWidth;
canvas.height = canvasHeight;
return canvas;
}
var canvas = createCanvas(500, 500);
var context = canvas.getContext('2d');
var croppedImage = new Image();
croppedImage.onload = function() {
let div = document.querySelector('#selection');
context.drawImage(croppedImage, 10, 23, 300, 300, 0, 0, 500, 500);
console.log(canvas.toDataURL());
};
croppedImage.src = param1;
}
});