Я создаю расширение Chrome - оно автоматически заполняет определенную веб-форму несколько раз.Background.js отправляет сообщения на content.js, который работает нормально.После отправки формы на веб-сайте появляется сообщение типа «Форма отправлена. Ссылочный номер ...», и я хочу перехватить все эти сообщения.Как этого добиться?
background.js
window.popups = []
chrome.runtime.onMessage.addListener(
function(request, sender, sendResponse) {
if (request.type === "myType") {
chrome.tabs.create({
url: "https://www.example.com/form"
}, function(tab) {
chrome.tabs.onUpdated.addListener(function listener(tabId, changeInfo) {
if (tabId === tab.id && changeInfo.status == 'complete') {
chrome.tabs.onUpdated.removeListener(listener)
chrome.tabs.sendMessage(tabId, {"msg":"hello"}, function(res){})
}
})
})
}else if(request.type === "popup"){
const msg = request.msg
window.popups.push(msg)
}
}
Я хочу вызвать эту функцию getPopup после отправки каждой формы.
function getPopup(){
chrome.tabs.query({currentWindow: true, active: true},
function(tabs){
chrome.tabs.sendMessage(tabs[0].id, {'type':'submitted'}, readPopupArr)
}
)
}
content.js
chrome.runtime.onMessage.addListener(function(request, sender, sendResponse) {
if(request.something){
}else if(request.type == "submitted"){
let msg = $(".someclass").text()
msg = msg.replace("OK", "");
chrome.runtime.sendMessage({
type:"popup", msg:msg
})
}
})