--- title: PopupNotifications.jsm slug: Mozilla/JavaScript_code_modules/PopupNotifications.jsm tags: - Modules - Notifications translation_of: Mozilla/JavaScript_code_modules/PopupNotifications.jsm ---
{{ gecko_minversion_header("2.0") }}
PopupNotifications.jsm
JavaScript コードモジュールはポップアップ通知ボックスサービスを提供します。このサービスを使うことにより、例えば、位置情報に関連する通知の表示といった機能を実現できます。
このサービスを使用するためには、最初に、あなたの JavaScript スコープへとコードモジュールをインポートする必要があります:
Components.utils.import("resource://gre/modules/PopupNotifications.jsm");
モジュールを一度インポートすれば、エクスポートされた PopupNotifications
オブジェクトを使用できるようになります。このオブジェクトは、ポップアップ通知パネルの作成と表示のためのメソッドを提供します。
void locationChange(); |
Notification getNotification(id, browser); |
void remove(notification); |
Notification show(browser, id, message, anchorID, mainAction, secondaryActions, options); |
属性 | 型 | 詳細 |
isPanelOpen |
Boolean |
通知パネルが現在表示されているのであれば true を、そうでない場合は false を返します。 |
使用者 (consumer)は、ポップアップ通知モジュールに現在のブラウザのロケーションが変更されたことを知らせるために、このメソッドを呼び出します。これにより通知サービスは、必要に応じて、アクティブな通知を更新することができます。
void locationChange();
無し。
指定した browser
要素および ID に関連づけられている Notification
オブジェクトを取得します。
Notification
getNotification(
string id
XULElement browser
);
id
Notification
ID。browser
Notification
オブジェクトを検索する XUL {{ XULElem("browser") }} 要素。 null
である場合、現在選択されている {{ XULElem("browser") }} に関連づけられている Notification
オブジェクトが検索されます。与えられた引数に対応する Notification
オブジェクト。対応する Notification
オブジェクトが無い場合は null
を返します。
指定された通知を削除します。
void remove( Notification notification );
notification
Notification
オブジェクト。新しいポップアップ通知を追加し、ユーザーへと表示します。
Notification show( browser, id, message, anchorID, mainAction, secondaryActions, options );
browser
null
であってはいけません。現在のタブへと通知を結びつける場合であれば、単純に gBrowser.selectedBrowser
を指定する事が可能です。id
message
anchorID
null
に指定した場合、通知は PopupNotification オブジェクトのアイコンボックスを表示元とします。この anchorID は、PopupNotification オブジェクトのアイコンボックスの内側に含まれる要素を指定しなければなりません。(Firefox ウィンドウであれば、グローバル PopupNotifications オブジェクトは notification-popup-box
要素を使用します)mainAction
secondaryActions
options
追加された通知に対応する Notification
オブジェクトを返します。
Notification action オブジェクトは、通知に結び付いたアクションのためのユーザーインターフェースを記述します。main action は通知パネル中に表示されるボタンの挙動を記述するために使われます。一方、secondary actions はボタンからドロップダウン表示されるメニューの挙動を記述するのにつかわれます。
Notification action は以下のプロパティを含まなければなりません:
label
accessKey
callback
Notification options オブジェクトは通知パネルの更なるカスタマイズを指定できます。以下のプロパティをどのように組み合わせた場合でもカスタマイズは提供されます:
persistence
timeout
Date.now()
に、通知を表示し続ける時間量を示すオフセット値を加えます。(例:30秒とする場合は Date.now() + 30000
。)persistWhileVisible
true
の場合、別のロケーションへと移動しても、通知は表示されたままになります。dismissed
eventCallback
neverShow
true
に指定した場合、ポップアップが表示されるのを永続的に妨げます。通知としてアンカーアイコンのみを表示する目的に使用できます。removeOnDismissal
true
にされている通知は削除されます。popupIconURL
{{ fx_minversion_inline("11") }}.popup-notification-icon[popupid=...]
セレクタ―を用いて指定されています。show()
を呼び出す際に options
パラメータを使用してイベントコールバックを指定した場合、通知の状態の変更に応じてコールバック関数が呼び出されます。コールバック関数の最初の引数は、状態の変更を示す以下の文字列のうちのいずれかひとつとなります:
いずれの通知も Notification
オブジェクトによって提供されます。このオブジェクトは通知の表示と管理に必要なすべてのデータを含み、1つのメソッドを持っています。anchorElement
プロパティは通知のアンカー要素を返します。 remove()
メソッドは通知を除去します。
{{ languages( { "en": "en/JavaScript_code_modules/PopupNotifications.jsm" } ) }}