У моего расширения есть background.html, который получает некоторую информацию, а затем перенаправляет его на другую веб-страницу, чей css изменен моим файлом javascript (app.js). Итак, теперь я пытаюсь передать массив из background.html в этот файл javascript, как в той же самой папке расширения. Я попробовал example, но у меня не было успеха. Как я могу это сделать?Передача массива внутри расширений Chrome
0
A
ответ
1
Когда я работал над расширением, которое нужно было пройти много информации назад и вперед между фоном и файл JS я нашел это было проще создать вар, как этот
const Background = chrome.extension.getBackgroundPage()
и тогда, когда я необходимо было получить доступ к чему-либо на странице фона, на которой я мог бы просто использовать. оператор. как этот
Background.foo() //access a function on background page.
Background.my_var // access a variable on the background page.
Background.my_array[0] // access the 0 index in your background array
Поскольку фон странице не нужно знать, что было в файле JS большой части времени это было просто проще в использовании:
popups[0].foo()
Если необходимо получить доступ что-то в popup или js-файлов.
0
это в вашем фоне страницы
chrome.tabs.create({url: "http://yourdomain.com"}, function (tab){
chrome.tabs.executeScript(tab.id, file: "app.js", function(){
//This is a Callback
});
});
Смежные вопросы
- 1. Написание chrome-расширений
- 2. Chrome расширений: сделать chrome.tabs.query() синхронным
- 3. Получить список расширений Chrome из приложения Chrome
- 4. API печати для расширений Chrome
- 5. bookmarkManagerPrivate разрешений для расширений Chrome
- 6. Отчет об использовании расширений Chrome
- 7. Разрешение на расширение расширений Chrome
- 8. eclipse: добавить библиотеку расширений Chrome
- 9. Передача массива внутри «параметров» адаптера в Worklight
- 10. Передача массива функции внутри класса PHP
- 11. Передача массива внутри функции возврата: jquery dataTable
- 12. Передача байтового массива внутри пакета становится нулевым
- 13. Передача массива внутри одного текста ввода
- 14. Какие лайтбоксы работают внутри расширений Firefox?
- 15. Проверка расширений файлов из массива
- 16. Стартовые потоки внутри расширений Python
- 17. Включить Chrome расширений в Google Chrome App WebView
- 18. Попросите Chrome обработать HTTP-запрос из расширений Chrome
- 19. Как получить идентификаторы расширений Chrome программно из Интернет-магазина Chrome?
- 20. Настроить функцию автоматического обновления для chrome-расширений
- 21. HD скриншоты для расширений Chrome от Google
- 22. Chrome Rich Уведомления только для расширений?
- 23. расширений Chrome: Сохранение нескольких идентификаторов в chrome.storage
- 24. Предварительные требования для создания расширений Chrome/Safari
- 25. Как использовать HTML5 WebSockets для расширений Chrome
- 26. Разрешенные сочетания клавиш для Chrome-расширений
- 27. Расширение Chrome, которое скрывает другие значки расширений
- 28. BatteryStatus API для расширений Chrome не работает
- 29. Ярлык для перезагрузки расширений в Chrome
- 30. Есть ли аудио-web_accessible_resource для расширений Chrome?
что "chrome.extension.getBackgroundPage()" это не работает для меня. У меня есть в манифесте «background_page»: «background.html», поэтому я не понимаю, почему он не проходит в этой функции. Но если я использую эту функцию в background.html, она проходит, но не в моем файле javascript. – Calado
включили ли вы свой javascript-файл на свою страницу popup.html? – Ryan
Если я это сделаю, Javascript не будет работать, потому что он как будто уже выполнен. Я помещаю в файл JS const background = chrome.extension.getBackgroundPage(); alert (background.token); и когда я запускаю мое расширение, e дает предупреждение «undefined», и страница еще не дошла до страницы перенаправления. – Calado