Sie müssen eine Hintergrunddatei hinzufügen. Aber zuerst müssen Sie ein Attribut in manifest.json hinzufügen, wie z.
"background":{
"scripts":["background.js"]
}
Benennen Sie jetzt eine Datei in Ihrem Erweiterungsordner als background.js. Es gibt eine Möglichkeit, Objekte aus dem Hintergrund an Ihre Inhaltsskripte zu senden. Angenommen, Ihr Inhaltsskript heißt content.js. Dann müssen Sie dieses Codefragment in die Datei background.js schreiben
chrome.browserAction.onClicked.addListener(sendfunc);
function sendfunc(tab){
msg={txtt:"execute"};
chrome.tabs.sendMessage(tab.id,msg);
}
Der obige Code sendet ein Objekt mit dem Namen msg an die Inhaltsseite, und dieses msg-Objekt hat die Eigenschaft txtt, die gleich "execute" ist. Als Nächstes müssen Sie die Werte im Inhaltsskript als vergleichen
chrome.runtime.onMessage.addListener(recievefunc);
function receivefunc(mssg,sender,sendResponse){
if(mssg.txtt==="execute"){
/*
your code of content script goes here
*/
}
}
Wenn Sie jetzt auf das Erweiterungssymbol klicken, wird ein Objekt mit dem Namen msg vom Hintergrund zum Inhalt gesendet. Die Funktion "recievefunc ()" vergleicht ihre txtt-Eigenschaft mit der Zeichenfolge "execute", wenn sie mit dem Rest des ausgeführten Codes übereinstimmt.
Hinweis: msg, txtt, sendfunc, receivefunc, mssg sind Variablen und keine Chrome-Schlüsselwörter, sodass Sie alles verwenden können, was Sie möchten.
ich hoffe es hilft.
:) :)