codecamp

WML 任务

任务 (task) 定义了事件发生时所执行的动作,比如在输入一个卡片或选择一个链接之类的时间发生时。

Go 任务

<go> 任务表示切换到一个新卡片的动作。

<go> 任务指示浏览器显示指定的 URL,包括 DECK 的第一个 CARD 或者指定的 CARD。

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

<wml>
<card>
<p>
 <anchor>
  Go To Test
  <go href="test.wml"/>
 </anchor>
</p>
</card> 
</wml>

提示:在 <go> 任务中,href 属性是必须的。

Prev 任务

<prev> 任务表示后退到前面的卡片的动作。

<prev> 任务用来将当前页面的 URL 压入 URL 历史堆栈,并打开此前的 URL,若该 URL 不存

在,则 <prev> 无效。

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

<wml>
<card>
<p>
 <anchor>
  Previous Page
  <prev/>
 </anchor>
</p>
</card> 
</wml>

Refresh 任务

<refresh> 任务会刷新一些指定的卡片变量。如果变量显示在屏幕上,任务也会刷新屏幕。

下面的例子使用 <anchor> 标签向卡片添加了一个 "Refresh this page" 链接。当用户点击该链接时,他或她会刷新页面,同时变量 x 的值将被设置为 30:

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

<wml>
<card>
<p>
 <anchor>
  Refresh this page
  <go href="thispage.wml"/>
  <refresh>
   <setvar name="x" value="30"/>
  </refresh>
 </anchor>
</p>
</card>
</wml>

Noop 任务

<noop> 任务规定不做任何事(noop 指的是 "no operation")。此标签用于覆盖卡片组级别的元素。

<do> 标签用于在用户点击屏幕上的某个单词或短语时启动一个任务。

下面的例子使用 <do> 标签向卡片添加一个 "Back" 链接。当用户点击这个 "Back" 链接时,他或他被被带回前面的卡片。但是 <noop> 标签阻止了这个操作;当用户点击 "Back" 时,不会发生任何事情:

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

<wml>
<card>
<p>
 <do name="back" type="prev" label="Back">
  <noop/>
 </do>
</p>
</card> 
</wml>

任务元素

开始标签 作用 WML
<go> 表示切换到新卡片的动作。 1.1
<noop> 规定不做任何事情。用于覆盖卡片组级别的元素。 1.1
<prev> 表示后退到前面的卡片的动作。 1.1
<refresh> 刷新一些指定的卡片变量。如果有变量显示在屏幕上,此任务也刷新屏幕。 1.1
WML 输入
WML 计时器
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }