WML - 事件



事件在普通語言中可以定義為發生的事情。在程式設計中,事件的含義相同,但有一個主要區別。當計算機系統中發生某些事情時,系統本身必須(1)檢測到發生了某些事情,並(2)知道如何處理它。

WML 語言也支援事件,並且您可以在事件發生時指定要採取的操作。此操作可以是 WMLScript 形式,也可以是 WML 形式。

WML 支援以下四種事件型別

  • onenterbackward:當用戶透過正常的向後導航方式點選卡片時,會發生此事件。也就是說,使用者在後面的卡片上按下後退鍵,並返回到歷史堆疊中的此卡片。

  • onenterforward:當用戶透過正常的向前導航方式點選卡片時,會發生此事件。

  • onpick:這更像是一個屬性,但它用作事件。當選擇列表中的專案被選中或取消選中時,會發生此事件。

  • ontimer:此事件用於在給定時間段後觸發事件。

這些事件名稱區分大小寫,並且必須為小寫。

WML <onevent> 元素

<onevent>...</onevent> 標籤用於建立事件處理程式。其用法採用以下形式

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

您可以在 <onevent>...</onevent> 標籤中針對事件使用 go、prevrefresh 任務。

<onevent> 元素支援以下屬性

屬性描述
type
  • onenterbackward
  • onenterforward
  • onpick
  • ontimer
定義發生的事件型別。
class類資料為元素設定類名。
id元素ID元素的唯一 ID。

以下示例顯示了 <onevent> 元素的用法。在此示例中,無論何時您嘗試從第二張卡片返回到第一張卡片,都會發生onenterbackward,這會將您移動到第三張卡片。複製並貼上此程式,然後嘗試使用它。

<?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>
廣告

© . All rights reserved.