Pull to refresh

Расширения для Opera: Вкладки

Reading time2 min
Views4.6K
Original author: Zi Bin Cheah
Вступление

Расширения для Opera функциональны: вы можете управлять кнопками браузера, дефолтным CSS и многими другуми фичами используя такие веб-стандарты, как HTML, JavaScript и CSS. В этой статье мы разберём как управлять вкладками.

Если вам необходимо ознакомиться с основами расширений для Opera, то статья «Ваше первое расширение для Opera» это хороший материал для начала.

Создание Вкладок

Начнём с создания вкладки. В начале, используем метод addEventListener для перехвата события загрузки документа. После того, как документ загрузится мы вызываем функцию.

Так же, мы проверяем наличие объекта opera.extension.tabs до того, как будем использовать его функции.

window.addEventListener( "load", function(){
  if( opera.extension.tabs.create ) //проверяем существование метода
  {
    opera.extension.tabs.create();  // создаём вкладку
  } 
  else {
  	//ничего не делаем
    }
}, false);

Создание Вкладок с адресом

Метод opera.extension.tabs.create принимает в качестве опционального аргумента объект TabProperties, который содержит булево значение активности вкладки и/или URL. Указав URL, мы можем создать вкладку, которая загрузит указанный адрес после открытия.

window.addEventListener( "load", function(){
  if( opera.extension.tabs.create )
  {
   opera.extension.tabs.create({url:"http://www.opera.com/"});
  } else {
    //ничего не делаем
  }
}, false);

Фокус Вкладок

Используя всё ту же идею перехватчика событий и проверки существования объекта opera.extension.tabs, мы можем манипулировать вкладками различными способами. Прежде всего, посмотрим как создать активную вкладку:

opera.extension.tabs.create({focused:true})

Прим. переводчика: Судя по всему, это поведение по умолчанию. Если вы хотите создать вкладку в фоне — установите focused в false.

Теперь, создадим активную вкладку с указанным URL:

opera.extension.tabs.create({url:"http://www.opera.com/",focused:true})

Закрытие вкладок

Закрывать вкладки так же просто. Попробуем так: создадим вкладку и закроем её через секунду.

window.addEventListener( "load", function(){
  if( opera.extension.tabs )
  {
    var tab = opera.extension.tabs.create({url:"http://www.opera.com/",focused:true});
    window.setTimeout( function(){
      opera.extension.tabs.close( tab );
    }, 1000);
  } else {
  // Не найден объект opera.extension.tabs
  }
}, false);

Что дальше?

Вот и всё. Теперь вы знаете как создавать, изменять и закрывать вкладки. Вы можете обратиться к API расширений для Opera, чтобы получить полную информацию о объекте tabs и его методах. Так же вы можете прочитать статью о управлении Окнами браузера из расширений.

Ссылка на API
объект opera.extension.tabs

Примеры
CreateTab.oex — создаёт кнопку, при клике на которую открывается новая вкладка.
CreateTabInBG.oex — создаёт кнопку, при клике на которую в фоне открывается новая вкладка.
CreateTabWithUrl.oex — создаёт кнопку, при клике на которую открывается новая вкладка с заданным адресом.
Tags:
Hubs:
Total votes 45: ↑36 and ↓9+27
Comments13

Articles