WML-タイマー

前の章では、ユーザーがイベントをトリガーする方法と、イベントハンドラーを使用してイベントを処理する方法について説明しました。

場合によっては、ユーザーが明示的にコントロールをアクティブ化する必要なしに、何かが発生したいことがあります。はい、WMLはあなたに提供しますontimer これを処理するイベント。

ontimerイベントは、カードのタイマーが1から0にカウントダウンしたときにトリガーされます。つまり、タイマーがゼロのタイムアウトに初期化されている場合は発生しません。

<onevent>要素を使用して、タスクをこのイベントにバインドできます。構文は次のとおりです。

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

ここで、タスクは<go>、<prev>、または<refresh>になります。

WML <timer>要素:

タイマーは、<timer>要素を使用してWMLカード内で宣言されます。<onevent>要素が存在する場合は、それらの後に続く必要があります。(<onevent>要素がない場合、<timer>は<card>内の最初の要素である必要があります。)1つのカードに存在できる<timer>は1つだけです。

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

属性 説明
名前 テキスト 要素の名前を設定します。
タイマーが期限切れになるまでのタイマーを指定します。タイムアウトは、10分の1秒単位で指定されます。
クラス class_data 要素のクラス名を設定します。
id 要素ID 要素の一意のID。

以下は、<timer>要素の使用法を示す例です。

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

<wml>

<card id="splash" title="splash">
  <onevent type="ontimer">
    <go href="#welcome"/>
  </onevent>
  <timer value="50"/>
<p>
  <a href="#welcome">Enter</a>
</p>
</card>

<card id="welcome" title="Welcome">
<p>
Welcome to the main screen.
</p>
</card>
</wml>

このプログラムをロードすると、次の画面が表示されます。

与えられたものを選択しない場合 Enter オプションを選択すると、5秒後に次の場所に移動します Welcome ページと次の画面が自動的に表示されます。