Вступление
Расширения для Opera дают вам возможность добавлять функционал прямо в десктопный браузер Opera, используя такие веб-стандарты как HTML, JavaScript и CSS. В этой статье мы рассмотрим, как использовать API расширений для управления оконной системой браузера. Делается это через объект Windows.
Создание окон
Как обычно, мы используем перехватчик событий, чтобы запускать функцию в момент срабатывания события, в данном случае — когда окно завершает загрузку. Затем мы проверяем, существует ли функция opera.extension.windows.create прежде, чем вызвать её:
События в Окнах
События возбуждаются в момент взаимодействия с объектом Окна. Например, если окно в фокусе, то возбуждается событие onfocus. В расширениях для Opera таких событий четыре:
Когда события возбуждаются, мы используем метод opera.postError для оповещения об этом. Вы можете наблюдать вывод opera.postError в Error Console.
Перехватчики событий в Окнах
Теперь обратим наше внимание на перехватчики событий. Подобно стандартным перехватчикам событий в JavaScript, вы передаёт перехватчику событий в расширении для Opera три аргумента: событие, функцию для выполнения и булеву величину. Вы можете перехватывать следующие типы событий:
В следующем примере кода мы регистрируем событие focus, используя функцию addEventListener. Последний аргумент определяет фазу, на которой обработчик события должен запускаться. Это должна быть булева величина и в данный момент мы выставим её значение в false.
Разница между addEventListener и onevent заключается в том, как эти две модели событий работают. К примеру, этот код выполнит только последнюю строку, так как она заменит первую.
Следующий пример выполнит обе функции, так как они обе зарегистрированы:
Заключение
В этой статье мы рассмотрели, как управлять Окнами в десктопном браузере Opera используя объект windows. Для большей информации вы можете обратиться к API расширений для Opera.
Ссылка на API
объект opera.extension.windows
Update. Пара примеров:
CreateWindow.oex — создаёт кнопку, при клике на которую открывается новое окно.
Events.oex — постит в Error Console о событиях происходящих с окном браузера.
Расширения для Opera дают вам возможность добавлять функционал прямо в десктопный браузер Opera, используя такие веб-стандарты как HTML, JavaScript и CSS. В этой статье мы рассмотрим, как использовать API расширений для управления оконной системой браузера. Делается это через объект Windows.
Если вам необходимо ознакомиться с основами расширений для Opera, то статья «Ваше первое расширение для Opera» это хороший материал для начала.
Создание окон
Как обычно, мы используем перехватчик событий, чтобы запускать функцию в момент срабатывания события, в данном случае — когда окно завершает загрузку. Затем мы проверяем, существует ли функция opera.extension.windows.create прежде, чем вызвать её:
window.addEventListener( "load", function(){
if( opera.extension.windows.create )
{
opera.extension.windows.create();
} else {
// Функция opera.extension.windows.create не найдена
}
}, false);
События в Окнах
События возбуждаются в момент взаимодействия с объектом Окна. Например, если окно в фокусе, то возбуждается событие onfocus. В расширениях для Opera таких событий четыре:
- onfocus
- onclose
- oncreate
- onblur
Когда события возбуждаются, мы используем метод opera.postError для оповещения об этом. Вы можете наблюдать вывод opera.postError в Error Console.
window.addEventListener( "load", function(){
if( opera.extension.windows )
{
opera.extension.windows.onfocus = function( event ){
opera.postError("windows is focused");
}
opera.extension.windows.onclose = function( event ){
opera.postError("windows is closed");
}
opera.extension.windows.oncreate = function( event ){
opera.postError("windows is create");
}
opera.extension.windows.onblur = function( event ){
opera.postError("windows loses focus");
}
} else {
// Объект opera.extension.windows не найден
}
}, false);
Перехватчики событий в Окнах
Теперь обратим наше внимание на перехватчики событий. Подобно стандартным перехватчикам событий в JavaScript, вы передаёт перехватчику событий в расширении для Opera три аргумента: событие, функцию для выполнения и булеву величину. Вы можете перехватывать следующие типы событий:
- focus
- close
- create
- update
- blur
В следующем примере кода мы регистрируем событие focus, используя функцию addEventListener. Последний аргумент определяет фазу, на которой обработчик события должен запускаться. Это должна быть булева величина и в данный момент мы выставим её значение в false.
opera.extension.windows.addEventListener( "focus", function(){// делаем что-нибудь}, false)
Разница между addEventListener и onevent заключается в том, как эти две модели событий работают. К примеру, этот код выполнит только последнюю строку, так как она заменит первую.
opera.extension.windows.onfocus = function(){ // делаем что-нибудь };
opera.extension.windows.onfocus = function(){ // делаем что-нибудь };
Следующий пример выполнит обе функции, так как они обе зарегистрированы:
opera.extension.windows.addEventListener( "focus", function(){ // делаем что-нибудь }, false);
opera.extension.windows.addEventListener( "focus", function(){ // делаем что-нибудь }, false);
Заключение
В этой статье мы рассмотрели, как управлять Окнами в десктопном браузере Opera используя объект windows. Для большей информации вы можете обратиться к API расширений для Opera.
Ссылка на API
объект opera.extension.windows
Update. Пара примеров:
CreateWindow.oex — создаёт кнопку, при клике на которую открывается новое окно.
Events.oex — постит в Error Console о событиях происходящих с окном браузера.