Как отправить данные между файлами в расширении Chrome / на веб-сайте? - PullRequest
1 голос
/ 03 февраля 2012

Итак, у меня есть расширение Chrome, которое делает разные вещи для сайта.То, что я хотел бы сделать, это переписать это, чтобы сделать его чище и более актуальным, поэтому я начал.У меня есть какой контент-скрипт, и это «infuse.js», который внедряет другой файл t3.js в веб-сайт.

Мой вопрос: есть ли способ передать данные из localStorage в t3.js?

У меня есть sendRequest и настроен ответ, поэтому infuse.js может читать хранилище, но,если я попытаюсь выполнить sendRequest из t3.js, он, очевидно, окажется неопределенным, поскольку не является скриптом содержимого, и, следовательно, не имеет доступа к API.

Дайте мне знать, если что-нибудь знаете.

1 Ответ

2 голосов
/ 08 февраля 2012

Что-то в этом есть в документах .... http://code.google.com/chrome/extensions/content_scripts.html#host-page-communication

Кроме того, если вы хотите передать что-то в t3.js только один раз, когда оно внедряется, вы можете ввести несколько js, которые устанавливаютзначения до введения t3.js.

settings={1:"something'set'",2:["blek",1,2,3]}; //Youd get these from localStorage or something

head = document.getElementsByTagName('head')[0],
script = document.createElement('script');

script[script.innerText ? 'innerText' : 'textContent'] = 'var settings=' + JSON.stringify(settings)+ ';';

head.appendChild(script);

//Then inject t3.js
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...