Question

Longue histoire courte, je travaille sur un Google Chrome Extension. Les extensions n'ont pas accès à des variables dans le cadre de la page, ils fonctionnent par défaut (vous devez communiquer via le DOM).

Ce que je suis en train de faire est d'insérer un script dans la page; cela fonctionne très bien en définissant une balise de script et un attribut src.

Le problème est ce script a besoin d'une variable à initialiser au préalable. Pour initialiser cette variable que je suis en train de construire un élément de script avec sa ligne de code (plutôt que chargé à partir d'une source externe) mais je vais avoir du mal à le faire fonctionner.

Est-ce possible et si oui, comment définiriez-je la source dans le script? J'ai essayé un noeud annexant de texte contenant la source JS à l'élément de script, mais sans résultat.

Était-ce utile?

La solution

Il suce, mais la meilleure façon de le faire est probablement de communiquer vos données en injectant dans le DOM: http://code.google.com/chrome/extensions/content_scripts.html#host-page-communication

Vous pourriez aussi être en mesure d'y arriver en faisant quelque chose comme:

var script = document.createElement('script');
script.type = 'text/javascript';
script.text = 'alert("It works!");';
document.head.appendChild(script);

Je n'ai pas testé, mais je devine qu'il va travailler à partir de vos scripts de contenu.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top