WML - 定時器



上一章描述了使用者如何觸發事件以及如何使用事件處理程式處理它們。

有時,您可能希望某些事情發生,而無需使用者顯式啟用控制元件。是的,WML 提供了 ontimer 事件來處理此問題。

當卡片的計時器從一開始倒計時到零時,將觸發 ontimer 事件,這意味著如果計時器初始化為零超時,則不會發生此事件。

您可以使用 <onevent> 元素將任務繫結到此事件。以下是語法

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

這裡,任務可以是 <go>、<prev> 或 <refresh>。

WML <timer> 元素

計時器在 WML 卡片內使用 <timer> 元素宣告。如果存在 <onevent> 元素,則它必須位於 <onevent> 元素之後。(如果沒有 <onevent> 元素,則 <timer> 必須是 <card> 內的第一個元素。)卡片中最多隻能存在一個 <timer>。

<timer> 元素支援以下屬性

屬性描述
name文字設定元素的名稱。
value數字指定計時器過期後的時間。超時以十分之一秒為單位指定。
classclass_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>

載入此程式時,將顯示以下螢幕

WAP Exampple19

如果您不選擇給定的Enter選項,則5秒後,您將自動定向到Welcome頁面,並將顯示以下螢幕。

WAP Exampple20
廣告
© . All rights reserved.