Chrome extension, взаимодействие со страницей
Задача: разработать интерфейс обмена данными расширения и web-страницы.
Сделал по developer.chrome.com. Для начала хочу отослать сообщение на страницу. Когда навесил событие на кнопку в popup способом onclick = function..., из которой вызывал: function postMessage( str ){ window.postMessage({ type: "FROM_PAGE", text: str}, "*"); }происходило переполнения стэка вызова в popup странице (???). Сделал как в developer.chrome.com: ничего не происходит, почему-то в консоли основной страницы нет сообщения. Отлавливаю сообщение во встроенном в страницу скрипте так: window.addEventListener("message", function(event) { // We only accept messages from ourselves if (event.source != window) return; if (event.data.type && (event.data.type == "FROM_PAGE")) { console.log("Content script received: " + event.data.text); port.postMessage(event.data.text); } }, false); В чем проблема не понимаю. Взаимодействие происходит через какой-то буфер (есть в некоторых статьях), но как отлаживать скрипты? Упоминается страница background.html (куда, наверное, встраиваются скрипты), но как для нее консоль запустить - не знаю. |
Осталось разобраться с пересылкой сообщений между background, popup, insertJS. Объект chrome.runtime.
|
Тема закрыта, все есть в оф. документации.
|
Часовой пояс GMT +3, время: 04:28. |