Как обнаружить вкладки, изменить URL-адреса или создать вкладки в расширении Google Chrome? - PullRequest
22 голосов
/ 01 апреля 2011

У меня вопрос по написанию расширения Google Chrome.Теперь моя цель - обнаружить, что если вкладка создана или URL-адрес вкладки был изменен.

Практически я хочу вставить словарь .js из онлайн-ссылки на любую веб-страницу в Chrome искрипт будет работать как background.html.Например, если вы откроете браузер и перейдете на свою домашнюю страницу, он запустит скрипт для вставки dictionary.js на эту страницу.Когда создается новая вкладка или открывается новая страница, он также запускает скрипт.И когда люди меняют URL табуляции, он тоже запускает скрипт.Как определить, изменяется ли вкладка в таких ситуациях?Хорошо, вот мой ... код, я думаю, чтобы объяснить это.

chrome.someFunctionThatDetectTheSituationsAbove(function() {
    insertDictionaryScript();//I'd love to have the script of detection, not the insertDictionaryScript();
}

Буду признателен за любую идею.Спасибо.: P.

[x]

Ответы [ 4 ]

54 голосов
/ 01 апреля 2011

Просто добавьте это на свой background.js:

chrome.tabs.onUpdated.addListener(function(tabId, changeInfo, tab) {
    insertDictionaryScript();
});

chrome.tabs.onCreated.addListener(function(tab) {         
   insertDictionaryScript();
});
12 голосов
/ 24 февраля 2013

Также есть onActivation событие:

chrome.tabs.onActivated.addListener(function(tabId, changeInfo, tab) {
   insertDictionaryScript();
});
8 голосов
/ 01 апреля 2011

То, что вы описываете, называется скриптом контента.Вам не нужно никакого кодирования для этого, просто сделайте объявление в файле манифеста.Подробнее о скриптах контента здесь .

3 голосов
/ 01 апреля 2011

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

Вы можете обнаружить изменение URL вкладки, добавив прослушиватель в onUpdated событие.

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