Полезная информация

Хотите узнать больше о расширениях? Посмотрите ролики, рассказывающие о работе с расширениями Firefox.

№124-05-2015 13:20:11

Diving
Участник
 
Группа: Members
Зарегистрирован: 24-05-2015
Сообщений: 4
UA: Firefox 38.0

Как открыть новый Tab из расширения?

Добрый день!

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

b593bb69def2df66d1dc2ff855bcf768.jpg

Отсутствует

 

№224-05-2015 18:19:06

Diving
Участник
 
Группа: Members
Зарегистрирован: 24-05-2015
Сообщений: 4
UA: Firefox 38.0

Re: Как открыть новый Tab из расширения?

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

Отсутствует

 

№324-05-2015 19:22:34

Infocatcher
Not found
 
Группа: Extensions
Зарегистрирован: 24-05-2007
Сообщений: 4339
UA: Firefox 38.0

Re: Как открыть новый Tab из расширения?

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

Выделить код

Код:

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/");
}

Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела

Отсутствует

 

№424-05-2015 19:52:56

Diving
Участник
 
Группа: Members
Зарегистрирован: 24-05-2015
Сообщений: 4
UA: Firefox 38.0

Re: Как открыть новый Tab из расширения?

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

Отсутствует

 

№524-05-2015 21:33:22

Infocatcher
Not found
 
Группа: Extensions
Зарегистрирован: 24-05-2007
Сообщений: 4339
UA: Firefox 38.0

Re: Как открыть новый Tab из расширения?

Diving пишет

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

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


Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела

Отсутствует

 

№624-05-2015 21:43:19

Diving
Участник
 
Группа: Members
Зарегистрирован: 24-05-2015
Сообщений: 4
UA: Firefox 38.0

Re: Как открыть новый Tab из расширения?

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

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

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

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

Отредактировано Diving (24-05-2015 21:49:52)

Отсутствует

 

Board footer

Powered by PunBB
Modified by Mozilla Russia
Copyright © 2004–2020 Mozilla Russia GitHub mark
Язык отображения форума: [Русский] [English]