Добрый день!

У меня такой вопрос: есть расширение которое показывает окошко в котором отображается страница с моего сайта. На этой странице я хотел сделать ссылку например на Yandex, но так, чтобы когда её нажимаешь, сайт открывался в активном табе браузера, а не в новом окне, или в окне самого расширения. Я делал атрибут target="_blank" для ссылки, но тогда ссылка открывается в новом окне, а это мне не подходит,

b593bb69def2df66d1dc2ff855bcf768.jpg

Вы не поняли. В расширении отображается страница со ссылкой. Если нажать на эту ссылку, страница отобразится в окне расширения. А мне нужно указать, чтобы эта страница отобразилась в том окне где сейчас открыт Яндекс.

Примерно так:

Выделить код

Код:

Components.utils.import("resource://gre/modules/Services.jsm");
var win = Services.wm.getMostRecentWindow("navigator:browser");
if(win) {
    var gBrowser = win.gBrowser;
    gBrowser.selectedTab = gBrowser.addTab("https://forum.mozilla-russia.org/");
}

Спасибо Вам огромное за код! Это расширении создавал не я, мне его писали на заказ много лет назад, сейчас встала необходимость снова к нему вернуться и немного изменить функционал. Простите за мой глупый вопрос. Этот код нужно использовать непосредственно в коде самого расширения, или же в коде той HTML-страницы которая грузится в расширения? Возможен ли вариант добавления кода только в HTML-страницу без редактирования самого расширения? Еще раз благодарю за помощь!

Diving пишет

Этот код нужно использовать непосредственно в коде самого расширения, или же в коде той HTML-страницы которая грузится в расширения? Возможен ли вариант добавления кода только в HTML-страницу без редактирования самого расширения?

Что за страница? Если какая-то внешняя, то у нее прав не хватит.
Опять же, если страница откуда-то извне грузится, то и с обработкой кликов по ней сложнее будет: после клика надо будет убедиться, что был сделан клик по ссылке, отменить стандартное действие и открыть во вкладке.

Что за страница? Если какая-то внешняя, то у нее прав не хватит.

Страница с формой (см. скриншот) загружается с моего сайта, а не хранится внутри расширения.Такая страница внешней будет считаться?

после клика надо будет убедиться, что был сделан клик по ссылке

Ссылки по которым нужно будет нажимать будут сгенерированы на стороне сервера (моего), поэтому можно им присваивать некий ID если это поможет.