ウィンドウ要素

概要 (window要素)

<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="chrome://global/skin/"?>

<window xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
    <label value="Hello." />
</window>

これをopen()で開くと、

のように表示されます。

window要素の取得

メインウィンドウのwindow要素への参照は、window.contentで取得できます。Window.content - Web API Interfaces | MDN

属性

属性 説明
accelerated  
chromemargin  
disablechrome  
disablefastfind  
drawintitlebar  
fullscreenbutton  
height  
hidechrome  
id  
lightweightthemes  
lightweightthemesfooter  
screenX  
screenY  
sizemode  
title  
width  
windowtype  
属性 - window - XUL | MDN

ウィンドウを開く open()

指定されたurlを、新しいウィンドウで表示します。

newWindow = window.open(
    url,         // ウィンドウで読み込むURL
    name         // ウィンドウの名前
    [, features] // ウィンドウの特徴
    )
window.open - Web API reference | MDN

これは、たとえば次のように使用します。

var newWin = window.open(
    'chrome://myPackage/content/sample.xul',
    '_blank',
    'chrome,dialog=no' );

urlChrome URIで指定します。

open()で開かれたウィンドウは、既定でモードレス (親ウィンドウへのアクセスを制限しない) です。よってname'_blank'以外の名前を指定しない場合、複数のウィンドウが同時に開かれることがあります。これを望まずつねに1つのウィンドウにのみ制限するならば、何らかの名前を明示します。

ウィンドウの特徴 (features)

featuresの項目の一部
項目 有効化されたときの作用
chrome ブラウザのインターフェイス要素は一切表示されない (XUL用)
dialog タイトルバーの閉じる以外のボタンを非表示
centerscreen ウィンドウが開かれたとき、画面の中央に表示される
dependent 親ウィンドウと相対的な位置関係を維持して表示される
(たとえば'dependent,centerscreen'とすると、親ウィンドウの中央に表示される)
resizable ウィンドウのサイズを、ユーザーがリサイズ可能となる
(リサイズを認めるならば、その内容物がそれに合わせて伸縮するようにする)
modal モーダルとなる (親ウィンドウへのアクセスを認めない)
alwaysRaised つねに親ウィンドウの最前面に表示
他のウィンドウの機能 - ウィンドウの機能 - XUL | MDN

複数の項目は、

'chrome,dialog=no'

のように、空白を含めずにカンマ区切りで指定します。yesかnoで指定する項目で設定値を省略すると、yesとみなされます。

外観の相違
設定値 yes no
''
(空文字)
---
'chrome'
'dialog'

詳細についてはWindow.open()でも解説しています。ただしそちらはJavaScriptの解説のため、Firefox以外のブラウザに関する記述も含まれます。

イベント

loadイベント

window.addEventListener( 'load', Func, false );

loadイベントはドキュメントがロードされたときに呼び出されるため、そこで初期設定を行えます。ちなみにwindowはグローバルオブジェクトであるため、それを省略して

addEventListener( 'load', Func, false );

と記述しても同じです。

メイン ウィンドウのloadイベント ハンドラ内での処理時間は、ブラウザのパフォーマンスに重大な影響を及ぼします。起動時 - Appendix A: Add-on Performance - XUL | MDN

Firefoxアドオンの情報サイトから、まとめて検索