Запускать / вызывать расширение Chrome с веб-страницы - PullRequest
15 голосов
/ 03 января 2012

Для проекта, над которым я сейчас работаю, мне нужно знать, возможно ли вызвать расширение Chrome.

Т.е. нажатие кнопки (или ссылки) на моей странице вызоветРасширение "Read It", что-то в этом роде.

Ответы [ 4 ]

3 голосов
/ 03 января 2012

Вы можете вставить свой content-script на каждую страницу (зарегистрировать его в манифесте расширения ) и изменить HTML-код страницы, добавив свой button или a со своим собственным идентификатором.1007 * Пример среды выполнения довольно хорошо объясняет, как вы будете инициировать событие со страницы в свой контент-скрипт.После того, как вы управляете триггером, вы можете делать что угодно в качестве логики расширения.

Также имейте в виду, что для этого потребуется добавление content-script вашего добавочного номера на каждую страницу, которую посещает пользователь.Невозможно фактически запустить выполнение вашего content-script со страницы, если это то, что вы просили.

1 голос
/ 04 марта 2015

создать манифест с background.js и content.js. Используйте

chrome.tabs.sendMessage(tabId, {}, function() { ... });

в фоновом режиме для отправки сообщений в скрипт контента, который внедряется в каждую веб-страницу, которая открывается, когда расширение установлено и включено. В скрипте content.js используйте

chrome.runtime.onMessage.addListener(function(req, sender, callback) {  
    < here use condition to find out when this exetnsion's popup.html should be opened and call the callback function which was passed in the argument list intially >
    callback("something");
});

Здесь функция обратного вызова определяется в background.js и передается в content.js - код для открытия нового окна расширения, такого как

var panel_props = {
            type: 'panel',
            'width': width,
            'height': height,
            'left': left,
            'top': top,
            url: "chrome-extension://" + <extensionid>+ "/index.html"   
          }

          chrome.windows.create(panel_props ,function (newWindow) { 
              vid = newWindow.id;
          });
1 голос
/ 03 января 2012

Да, это возможно.Вы можете написать так называемый Content Script , чтобы изменить страницу и подключить обработчики событий к ссылкам или кнопкам.

0 голосов
/ 05 марта 2019
  1. Выполните «поддельный» вызов ajax в коде вашей веб-страницы.
  2. Перехватите его в своем добавочном номере (см. https://medium.com/@gilfink/adding-web-interception-abilities-to-your-chrome-extension-fb42366df425)
  3. В режиме перехвата отмените «поддельный»)позвоните и реализуйте желаемое поведение.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...