Chrome расширение - запуск в окне и / или iFrame - PullRequest
0 голосов
/ 08 февраля 2020

Как я понимаю, в открытую вкладку нельзя добавить iFrame, если это системная страница. Используя this для справки, мое расширение открывается как iFrame. Однако я хотел бы, чтобы расширение открывалось как всплывающее окно (что, по-видимому, является поведением по умолчанию для большинства расширений) , если вкладка не является инъекционной.

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

chrome.browserAction.onClicked.addListener(function(){
chrome.tabs.query({active: true, currentWindow: true}, function(tabs){
    chrome.tabs.sendMessage(tabs[0].id,"toggle");
})});

SimilarWeb пример этого. -Кликните на SimilarWeb, когда есть только пустая вкладка:

Clicking on SimilarWeb when there is just a blank tab

-Кликните на SimilarWeb с веб-сайтом, загруженным во вкладку:

enter image description here

Этот вид работает, но только один раз при каждом открытии браузера background.js -

chrome.browserAction.onClicked.addListener(function () {
  chrome.tabs.query({active: true, currentWindow: true}, function (tabs) {
    if (tabs[0].url.includes("chrome://")) {
      chrome.browserAction.setPopup({popup: "index.html"});
    } else {
      chrome.tabs.sendMessage(tabs[0].id, "toggle");
    }
  })
});

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