All’evento di caricamento della pagina nelle estensioni di Chrome

Voglio controllare alcuni valori nel contenuto della pagina del browser Chrome quando è stato caricato completamente in quel modo

if(document.body.innerText.indexOf("Cat") !=-1) 

Dove e quando posso effettuare il mio assegno? per favore dammi un chiaro esempio Ho letto alcune cose su “Background.html” e “Contenuto script” ma non posso farlo

Registrare uno script di contenuto nel file manifest su "run_at": "document_idle" (che è l’impostazione predefinita) e inserire il codice nel file di script del contenuto. Quindi lo script verrà eseguito quando la pagina è pronta.

Se si desidera rilevare dalla pagina di sfondo se una pagina è stata caricata completamente, utilizzare l’evento chrome.webNavigation.onCompleted e fare ciò che si desidera, ad esempio chiamando chrome.tabs.executeScript per eseguire uno script di contenuto. Questo metodo potrebbe essere utile rispetto al metodo precedente se l’elenco di URL è dinamico o se i pattern URL non possono essere descritti utilizzando la syntax del modello di corrispondenza .

 chrome.webNavigation.onCompleted.addListener(function(details) { chrome.tabs.executeScript(details.tabId, { code: ' if (document.body.innerText.indexOf("Cat") !=-1) {' + ' alert("Cat not found!");' + ' }' }); }, { url: [{ // Runs on example.com, example.net, but also example.foo.com hostContains: '.example.' }], }); 

Le autorizzazioni webNavigation e host devono essere impostate in manifest.json , ad esempio:

 { "name": "Test", "version": "1.0", "background": { "scripts": ["background.js"] }, "permissions": [ "webNavigation", "*://*/*" ], "manifest_version": 2 }