■ STEP9 - ユーザーインターフェース-1
メッセージ表示をまとめました。
(今回利用しているXMLファイルとサンプル表示はここにまとめています。)
もちろん、ただメッセージを表示するだけならば必要ありません。
では、何処が違うか・・
作成されたメッセージはすべて毎回表示されますが、ユーザーが確認後に[×]をクリックすることで非表示にできるということです。
* メッセージは一度非表示にすると、更新しない限り表示されません。
-
基本のメッセージ
-
<Require feature="minimessage"/> を <ModulePrefs>の下におきます。
-
var msg = new gadgets.MiniMessage(__MODULE_ID__); でMiniMessage オブジェクトをインスタンス化します。
-
メッセージを作成を作成して終わりです。
msg.createDismissibleMessage("基本的なメッセージ表示です。");
-
位置の設定
- 複数の場合;HTML 要素 (<div> を推奨) をコンストラクタに渡すことによって、メッセージ コンテナ要素のデフォルトの位置をオーバーライドできます。この要素は、メッセージが挿入され、表示される場所のメッセージ コンテナになります。
var msg = new gadgets.MiniMessage(__MODULE_ID__, document.getElementById("messageBox"));と引数を加え
<div id="messageBox"></div>で表示
- 単独の場合;
位置指定はできますが、ユーザーが閉じることのできないメッセージです。
ガジェットの HTML 部分の中でメッセージをマークアップし、その HTML 要素 (>div< を推奨) を createDismissibleMessage() への 1 番目のパラメータとして渡します。
メッセージの箇所の変わりにmsg.createDismissibleMessage(document.getElementById("status"));を入れ
<div id="status"></div>で表示
-
DOMの利用
-
var msg = new gadgets.MiniMessage(__MODULE_ID__);
var div = document.createElement("div");//デフォルトでメッセージ コンテナに追加します。
div.innerHTML = "ここはメッセージ";
msg.createDismissibleMessage(div);
-
自動的に非表示になるタイマーメッセージ
-
指定された時間が経過すると消える、あらかじめフォーマットされたメッセージです。関数 createTimerMessage() には、メッセージ文字列と、メッセージを表示する秒数を示す数の 2 つのパラメータを指定します。
-
msg.createTimerMessage("このメッセージは5秒後に消えます。", 5);
-
CSSによるカスタマイズ
- 複数の場合;
1.デファルトのCSS を使用して、すべてのメッセージスタイルをグローバルに変更します。
.mmlib_table {
width: 100%;
font: bold 9px arial,sans-serif;
background-color: #fff4c2;
border-collapse: separate;
border-spacing: 0px;
padding: 1px 0px;
}
.mmlib_xlink {
font: normal 1.1em arial,sans-serif;
font-weight: bold;
color: #0000cc;
cursor: pointer;
}
* 上書きして使います。
2.<![CDATA[ ~~内にスタイルを設定
<![CDATA[
<style>
.mmlib_table__MODULE_ID__ {
background-color: #000066;
color: #ffffff;
}
</style>
<script...>
.mmlib_table メッセージを含む HTML 表に適用されます。
.mmlib_xlink メッセージを閉じるのに使用する [x] リンクに適用されます。(閉じられるメッセージのみ)
- 単独の場合;
|
■ 関連するガジェット
|