Operaの拡張機能:Windows

エントリー



Operaの拡張機能を使用すると、HTML、JavaScript、CSSなどのWeb標準を使用して、デスクトップOperaブラウザに機能を直接追加できます。 この記事では、拡張機能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);
      
      





Windowsのイベント



イベントは、Windowオブジェクトとの対話の瞬間に興奮します。 たとえば、ウィンドウにフォーカスがある場合、onfocusイベントが発生します。 Operaの拡張機能には、次の4つのイベントがあります。



イベントが発生すると、opera.postErrorメソッドを使用してこれを通知します。 エラーコンソールでopera.postErrorの出力を確認できます。



 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);
      
      





Windowsイベントインターセプター



次に、イベントインターセプターに注目しましょう。 JavaScriptの標準イベントフックと同様に、Operaの拡張機能のイベントフックに、イベント、実行する関数、ブール値の3つの引数を渡します。 次のタイプのイベントをインターセプトできます。



次のコード例では、addEventListener関数を使用してフォーカスイベントを登録します。 最後の引数は、イベントハンドラーを起動するフェーズを決定します。 これはブール値である必要があり、現時点では値をfalseに設定します。



 opera.extension.windows.addEventListener( "focus", function(){//  -}, false)
      
      





addEventListenerとoneventの違いは、これら2つのイベントモデルの動作です。 たとえば、このコードは最初の行を置き換えるため、最後の行のみを実行します。



 opera.extension.windows.onfocus = function(){ //  - }; opera.extension.windows.onfocus = function(){ //  - };
      
      





次の例は、両方が登録されているため、両方の機能を実行します。



 opera.extension.windows.addEventListener( "focus", function(){ //  - }, false); opera.extension.windows.addEventListener( "focus", function(){ //  - }, false);
      
      





おわりに



この記事では、windowsオブジェクトを使用してOperaデスクトップブラウザーでWindowsを管理する方法について説明しました。 詳細については、Operaの拡張APIを参照できます。



APIリファレンス



opera.extension.windowsオブジェクト



更新する いくつかの例:

CreateWindow.oex-ボタンが作成され、クリックすると新しいウィンドウが開きます。

Events.oex-ブラウザウィンドウで発生するイベントについてエラーコンソールに投稿します。



All Articles