Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 23.01.2014, 23:17
Аватар для rekzi
Аспирант
Отправить личное сообщение для rekzi Посмотреть профиль Найти все сообщения от rekzi
 
Регистрация: 28.08.2013
Сообщений: 78

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 (куда, наверное, встраиваются скрипты), но как для нее консоль запустить - не знаю.
Ответить с цитированием
  #2 (permalink)  
Старый 24.01.2014, 01:08
Аватар для rekzi
Аспирант
Отправить личное сообщение для rekzi Посмотреть профиль Найти все сообщения от rekzi
 
Регистрация: 28.08.2013
Сообщений: 78

Осталось разобраться с пересылкой сообщений между background, popup, insertJS. Объект chrome.runtime.
Ответить с цитированием
  #3 (permalink)  
Старый 19.02.2014, 22:39
Аватар для rekzi
Аспирант
Отправить личное сообщение для rekzi Посмотреть профиль Найти все сообщения от rekzi
 
Регистрация: 28.08.2013
Сообщений: 78

Тема закрыта, все есть в оф. документации.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Подключение своих js скриптов в Chrome на любых сайтах avramch Opera, Safari и др. 5 28.07.2016 16:11
Не пустить юзерСкрипт во фрайм (Opera Extension). join Opera, Safari и др. 8 28.05.2012 13:15
Проблема с onended для chrome С.Тарасов Events/DOM/Window 14 21.05.2012 18:55
Получить размеры рабочей области окна в Chrome unclechu Events/DOM/Window 1 13.09.2011 02:37
тег <audio> в Opera, Chrome, Firefox Magneto Javascript под браузер 12 25.11.2010 15:12