Je voudrais faire une extension Chrome qui fournit un nouvel objet à l'intérieur de window
. Lorsqu'une page web est affichée dans un navigateur avec l'extension chargée, je voudrais que window.mything
pour être disponible via Javascript. Le site window.mything
aura quelques fonctions que je définirai dans l'extension, et ces fonctions devront être appelables à partir de console.log
ou tout autre fichier Javascript lorsque la page est affichée dans un navigateur dont l'extension est activée.
J'ai pu injecter avec succès un fichier Javascript dans la page en utilisant une balise Contenu script :
var s = document.createElement("script");
s.src = chrome.extension.getURL("mything.js");
document.getElementsByTagName("head")[0].appendChild(s);
mything.js ressemble à ceci :
window.mything = {thing: true};
console.log(window);
A chaque fois qu'une page se charge, je vois l'ensemble de la page window
comme je l'attends dans la console. Cependant, je ne peux pas interagir avec l'objet window.mything
à partir de la console. Il semble que si le script injecté n'a pas vraiment modifié l'objet global de la console, il n'en est rien. window
objet.
Comment puis-je modifier l'interface globale window
à partir d'une extension Chrome ?