Je veux savoir comment insérer une image dans une extension Chrome.
<img id="image" src="logo.png" />
J'insère correctement cette balise html dans un site Web, mais je ne peux naturellement pas charger cette image logo.png.
Des idées sur la façon de modifier manifest.json?
Il y a deux causes possibles au problème.
Vous injectez une image avec src="logo.png"
. L'élément d'image inséré devient une partie de la page, donc le navigateur n'essaie pas de charger l'image à partir de l'extension.
Pour résoudre ce problème, utilisez chrome.extension.getURL('logo.png');
pour obtenir l'URL absolue de la ressource.
"manifest_version": 2
est activé dans le fichier manifeste. Cela désactive toutes les ressources à usage externe, par défaut. Lorsque cette erreur se produit, le message suivant apparaît dans la console:
Non autorisé à charger la ressource locale: chrome: //gbmfhbpbiibnbbgjcoankapcmcgdkkno/logo.png
Pour résoudre le problème, ajoutez la ressource à une liste blanche, à savoir "web_accessible_resources"
dans le fichier manifeste:
...,
"web_accessible_resources": ["logo.png"]
}
MISE À JOUR: chrome.extension.getURL('logo.png')
Déconseillé depuis Chrome 58. Veuillez utiliser
runtime.getURL
.