一般振る舞い

一般振る舞いを使うと、 任意の HTML タグにあるイベント・ハンドラー に、JSF アクションを付加することができます。

一般振る舞いを使用すると、 タグ上で発生する任意のイベントへの 応答として、JSF アクションを実行できます。 この振る舞いが提供するメカニズムを通じて、 ユーザー自身で書いたコードを実行する代わりに、JavaScript™ 機能の 事前定義された手軽な blob を実行することができます。

一般振る舞いに付加できるタグの種類 またはイベントの種類に制限はありませんが、 この振る舞いに割り当てられたアクションは、 そのアクションが定義された コンテキスト内で実行できる (イベント・ ハンドラー内で実行できる) ことに注意が必要です。 例えば、onresize イベント・ハンドラー内で アラート・アクションを実行しても、あまり意味はありません。 一般振る舞いは、あるコンテキスト内で 実行されているアクションの意味の有無は チェックしません。 そのアクションが コンテキスト内で意味を持つかどうかを確認するのは、 コーダー/設計者の責任です。

コンポーネントを発行する JSF タグ

<hx:behavior>

基本 HTML

イベント・ハンドラーをサポートするいずれかの HTML タグで使用します。

JavaScript コンストラクター

hX_5.addBehavior("id", "eventname", new hX_5.JSFBehaviorGeneric(attributes)); 各部の意味は次のとおりです。

id

コンポーネントが付加される HTML タグの ID。

属性

コンマで区切られた属性のリスト。 各属性は、属性名と値から成る引用符付きストリングになっており、 コロンで区切られています (例: "label:MyLabel")。

eventname

振る舞いを呼び出す HTML イベント名。 例えば、onclick、onkeydown などです。 それぞれの振る舞いは、一部の HTML イベント名のみを サポートしています (例えば、 マウス・クリックの振る舞いを、 キーボード・イベントに バインドすることはできません)。 場合によっては、 この振る舞いを複数の HTML イベントに バインドする必要があります。 このような場合には、「疑似」イベント名が使用されます。 例えば、マウス・クリックの振る舞いは、 複数のイベントにバインドされますが、 そのイベント名は「onmouse」になります。

サポートされるイベント

イベント

説明

any

すべてのイベント・ハンドラーにサポートされますが、 通常はキーボード・ハンドラー、 マウス・ハンドラー、フォーカス/ぼかしハンドラーで使用されます。

属性

表 1. 一般振る舞い属性

属性名

説明

action

クリック可能なエンティティーを クリックしたときに実行されるアクション (またはアクションのセット)。 通常は、アクションのターゲット (またはターゲットのセット) が 必要になります。

target

ページ内の「input type='text'」フィールド の ID (このフィールドが提供されている場合)。 メニューで何かが選択されている場合は、 指定されたフィールドの値として、 メニュー項目のテキストが必ず設定されます。 通常、コンボ・ボックスをエミュレートする ポップアップ・メニューを作成する場合にのみ、 この属性が使用されます。 例えば、入力フィールドに隣接するメニューがあり、 メニューの最上位が単一のボタンになっているとします。 このボタンをクリックしてメニューを表示し、 そのメニューから項目を選択して、 入力フィールドの値を設定するような場合には、 この属性を使用してください。

function

キーを押したときに 実行される JavaScript 関数 (また は JavaScript の インライン・ストリング)。

順序付け

イベント用に指定された他のハンドラーのあとに、実行されます。

そのアクションがイベントを停止した場合、 イベントの続行/バブルを停止します。

API 呼び出し

API 呼び出し

説明

object = setAttribute(attribute)

属性を設定します。 属性がすでに設定されたものである場合は、 その値を変更します。

string = getAttribute(attribute-name)

属性の現行値を取得します。

制限

上記のように、適切ではないアクションを タグ/イベントにバインドすると、 ブラウザーが不正な (誤った) 動作を行う可能性があります。


フィードバック