WAP - WML 语法
WAP体系结构的最顶层由WAE(无线应用环境)组成,WAE由WML和WML脚本语言组成。
WML 脚本语言用于设计通过无线设备(例如移动电话)发送的应用程序。这种语言照顾小屏幕和低传输带宽。WML 是 XML 的一种应用,它是在文档类型定义中定义的。
WML 页面称为卡片组。它们被构造为一组卡片,通过链接相互关联。当从手机访问 WML 页面时,页面中的所有卡片都会从 WAP 服务器下载到手机上显示内容。
WML 命令和语法用于显示内容以及在卡片之间导航。开发人员可以使用这些命令在手机上声明变量、格式化文本以及显示图像。
WAP 程序结构
WML 程序通常分为两部分 -文档序言和正文。考虑以下代码 -
<?xml version="1.0"?> <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.2//EN" "http://www.wapforum.org/DTD/wml12.dtd"> <wml> <card> ... </card> ...more cards... </wml>
该文本的第一行表示这是一个 XML 文档,版本是 1.0。第二行选择文档类型并给出文档类型定义(DTD)的 URL 。该 DTD 给出了 WML 的完整 XML 定义。引用的 DTD 是在 WAP 1.1 中定义的,但此标头随 WML 的版本而变化。必须准确复制标头,以便工具包自动生成此序言。
正文包含在 <wml>...</wml> 标记对内,如上所示。WML 文档的正文可以包含以下一项或多项 -
甲板
卡片
所要显示的内容
导航说明
WML 命令
WML 中使用的命令总结如下:
格式化
命令 | 描述 |
---|---|
<p> | 段落 |
<b> | 大胆的 |
<大> | 大的 |
<em> | 强调 |
<我> | 斜体 |
<小> | 小的 |
<强> | 强烈强调 |
<u> | 下划线 |
<br> | 越线 |
插入图像
<img src="image-path/image - name" alt="Picture not available" />
使用表格
命令 | 描述 |
---|---|
<表> | 表的定义 |
<tr> | 定义一行 |
<td> | 定义列 |
<头部> | 表头 |
变量
声明为 -
<setvar name="x" value="xyz"/>
用作 -
$ identifier or $ (identifier) or $ (Identifier; conversion)
形式
命令 | 描述 |
---|---|
<选择> | 定义单个或多个列表 |
<输入> | 用户输入 |
<选项> | 定义可选列表中的选项 |
<字段集> | 定义一组输入字段 |
<选择组> | 在可选列表中定义选项组 |
任务要素
命令 | 描述 |
---|---|
<前往> | 代表切换到新卡的动作 |
<闲聊> | 说什么都不应该做 |
<上一页> | 代表返回上一张卡的动作 |
<刷新> | 刷新一些指定的卡变量。 |
活动
各种事件如下 -
命令 | 描述 |
---|---|
<做> | 定义 do 事件处理程序 |
<一个事件> | 定义一个 onevent 事件处理程序 |
<邮局> | 定义后场事件处理程序 |
<定时器> | 定义 ontimer 事件处理程序 |
<onenterforward> | 定义一个 onenterforward 处理程序 |
<向后输入> | 定义一个 onenterbackward 处理程序 |
<onpick> | 定义 onpick 事件处理程序 |
WML 程序示例
将以下 WML 代码保存到服务器上的 info.wml 中。如果您的服务器启用了 WAP,那么您可以使用任何 WAP 设备访问此页面。
<?xml version="1.0"?> <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.2//EN" "http://www.wapforum.org/DTD/wml12.dtd"> <!-- WML prolog.declaration of file type and version> <wml> <!-- Declaration of the WML deck> <card id="info" newcontext="true"> <!-- declaration of a card in deck> <p align="center"><b>Information Center</b></p> <!--paragraph declaration to display heading> <p> <!--paragraph declaration to display links> <a href="Movie.wml">1. Movies info.</a> <a href="Weather.wml">2. Weather Info.</a> <!--declaration of links for weather and movies> </p> </card> <!-- card end> </wml> <!-- program end>