WML-イベント

通常の言語でのイベントは、何かが起こったと定義できます。プログラミングでは、 event意味は同じですが、大きな違いが1つあります。コンピュータシステムで何かが起こったとき、システム自体はしなければなりません(1) 何かが起こったことを検出し、 (2) それについて何をすべきかを知っています。

WML言語はイベントもサポートしており、イベントが発生するたびに実行するアクションを指定できます。このアクションは、WMLScriptの観点から、または単にWMLの観点から行うことができます。

WMLは、次の4つのイベントタイプをサポートします。

  • onenterbackward:このイベントは、ユーザーが通常の後方ナビゲーション手段でカードをヒットしたときに発生します。つまり、ユーザーは後のカードの戻るキーを押して、履歴スタック内のこのカードに戻ります。

  • onenterforward:このイベントは、ユーザーが通常の前方ナビゲーション手段でカードをヒットしたときに発生します。

  • onpick:これは属性に似ていますが、イベントのように使用されています。このイベントは、選択リストの項目が選択または選択解除されたときに発生します。

  • ontimer:このイベントは、指定された期間の後にイベントをトリガーするために使用されます。

これらのイベント名では大文字と小文字が区別され、小文字である必要があります。

WML <onevent>要素:

<onevent> ... </ onevent>タグは、イベントハンドラーを作成するために使用されます。その使用法は次の形式を取ります。

<onevent type="event_type">
   A task to be performed.
</onevent>

イベントに対して<onevent> ... </ onevent>タグ内で、go、prev、またはrefreshタスクのいずれかを使用できます。

<onevent>要素は、次の属性をサポートします。

属性 説明
タイプ
  • onenterbackward
  • onenterforward
  • onpick
  • ontimer
発生したイベントのタイプを定義します。
クラス クラスデータ 要素のクラス名を設定します。
id 要素ID 要素の一意のID。

以下は、<onevent>要素の使用法を示す例です。この例では、2番目のカードから最初のカードに戻ろうとするたびにonenterbackwardカード番号3に移動することが発生します。このプログラムをコピーして貼り付け、試してみてください。

<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.2//EN"
"http://www.wapforum.org/DTD/wml12.dtd">

<wml>
<onevent type="onenterbackward">
  <go href="#card3"/>
</onevent>

<card id="card1" title="Card 1">
<p>
  <anchor>
     <go href="#card2"/>
     Go to card 2
  </anchor>
</p>
</card>
<card id="card2" title="Card 2">
<p>
   <anchor>
   <prev/>
      Going backwards
   </anchor>
</p>
</card>
<card id="card3" title="Card 3">
<p>
Hello World!
</p>
</card>
</wml>