显示列表
 template标签2008-05-27

定义模板,模板中的任务可用于wml下的所有card。
一个WML文件只能有一个template标签。
此标签只能包含do标签和onevent标签。

主要属性
1) onenterbackward 当用户通过使用 "prev" 任务导航到一个卡片中时发生。
2) onenterforward 当用户通过使用 "go" 任务导航到一个卡片中时发生。
3) ontimer 当timer标签指定的时间到期后发生。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
<head>
<meta http-equiv="Cache-Control" content="max-age=0"/>
</head>
<template>
<do type="accept" label="Card1">
<go href="#Card1"/>
</do>
<do type="accept" label="Card2">
<go href="#Card2"/>
</do>
<do type="prev" label="返回">
<prev/>
</do>
</template>

<card id="Card1">
<p>Here Is Card1</p>
</card>

<card id="Card2">
<p>Here Is Card2</p>
</card>
</wml>

在所有卡片的快捷操作中都有三个操作项。这把模板中的三个任务都应用到所有卡片中了。

查看全文 | 分类(WAP) | 访问(28) | 编辑
 card标签2008-05-27

一个wml页面被称为deck。deck可以包含一个或多个card(卡片)。card中包含文本、标记、链接、输入框、任务、图片等等。
手机打开一个wml页面,只显示一个card中的内容,当有多个card时,要通过链接、任务来跳转。
卡片的“id”属性可以作为“锚”来使用。

语法格式如下:
<card id="name" title="label" newcontext="boolean" ordered="true" onenterforward="href" onenterbackward="href" ontimer="href">
Content
</card>

主要属性
1) id。该属性可以作为“锚”来使用。<a href="#Card1">GoTo Card1</a>
2) title。标题
3) newcontext。用于指定WAP手机浏览当用户重新进入的时候是否需要初始化卡片中所有的内容。默认为false。
4) ordered。
5) onenterbackward。当用户通过使用 "prev" 任务导航到一个卡片中时出现。
6) onenterforward。当用户通过使用 "go" 任务导航到一个卡片中时出现。
7) ontimer。当指定时间timer过期的时候,用户浏览器就根据ontimer属性指定的URL打开相应的卡片。

<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
<template>
<do type="accept" label="Card1">
<go href="#Card1"/>
</do>
<do type="accept" label="Card2">
<go href="#Card2"/>
</do>
</template>

<card id="Card1" title="Card 1">
    <p>Card1 Content</p>
</card>

<card id="Card2" title="Card 2">
    <p>Card2 Content</p>
</card>
</wml>

手机打开这个wml文件后,显示Card1中的内容,按[操作]后,在[快捷操作]菜单中会有2个操作项Card1和Card2。不同手机可能有差异。
操作项Card1执行第一个do标签中的任务。操作项Card2执行第二个do标签中的任务。

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 id="Card1" title="Card 1">
    <p><a href="#Card2">Card1 Content</a></p>
</card>

<card id="Card2" title="Card 2">
    <p><a href="#Card1">Card2 Content</a></p>
</card>
</wml>

按[操作]后,选择[打开],就显示Card2中的内容。

newcontext的测试

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

<card id="Card1" title="Card 1" newcontext="false">
    <p>newcontext is false<br/>
<input name="Username"/>
<a href="#Card2">To Card2</a>
    </p>
</card>

<card id="Card2" title="Card 2" newcontext="true">
    <p>newcontext is true<br/>
<input name="Username"/>
<a href="#Card1">To Card1</a>
    </p>
</card>
</wml>

Card1中,在input中输入数据后,执行[重新下载]后,先前输入input中的数据还在,卡片没有初始化。Card2中执行[重新下载]后,卡片就初始化了。

查看全文 | 分类(WAP) | 访问(64) | 编辑
 meta标签2008-05-27

提供了关于WML文档的meta信息。

语法格式:<meta 属性 content="属性值" scheme="格式" forua="true|false"/>


属性
1) name 为你需要在页面上描述的事物规定一个名称。可以是 Keywords、Description、Author 等等。
2) http-equiv 是指特性的内容转换成HTTP的标头
3) content 规定属性的描述。
4) forua 设置转换数据是否要传送到用户代理器端,如果True则会将转换数据传送。
5) scheme 使用哪种形式或结构来将属性值加以翻译。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
<head>
<meta http-equiv="Cache-Control" content="max-age=0"/>
</head>
<card>
<p>Hello World!</p>
</card>
</wml>


当手机打开这个WML文档不会被缓存在手机中,再次打开这个页面就重新去下载。

缓存中的存储时间
<meta http-equiv="Cache-Control" content="max-age=3600"/>
其它的好象现在没什么用。

查看全文 | 分类(WAP) | 访问(24) | 编辑
 access标签2008-05-27

控制对这个WML文件的访问。
要在head标签内。

语法格式:<access domain="domain" path="path"/>

属性
domain。域名。指定后,只该域名的链接才能访问。
path。指定目录。在指定目录下才能访问。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
<head>
<access domain="www.huanghengxu.com"/>
</head>
<card title="小苹果">  
    <p>Hello World!</p>
</card>
</wml>

当其它的网站的链接要连入时,会提示服务器无法接入,只有该域名才能进入,如果指定path,则只有指定path下的文件才能链接进入。
这非常有效的控制了入口范围,并非任何地方都可以链接进入。

查看全文 | 分类(WAP) | 访问(47) | 编辑
 wml标签2008-05-27

定义了一个WML平台。这个标签包含了关于WML文档的卡片和信息。

属性
xml:lang。 设置在元素中使用的语言。该属性用于指定当前元素及其属性所用的描述语言,如英国英语、美国英语、法语、德语等,并可以为用户浏览器选择显示文本的语言提供依据。
class。 为元素设置一个类名称。
id。 为元素设置一个独立的名称。

wml的所有元素都有两个核心属性,id和class属性。
所有包含文本的元素均具有xml:lang属性。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
<head>
<meta http-equiv="Cache-Control" content="max-age=0"/>
</head>
<card>
<p>Hello World!</p>
</card>
</wml>

查看全文 | 分类(WAP) | 访问(65) | 编辑
 让IIS支持WAP2008-05-26

配置IIS的MIME类型
打开IIS,网站的属性--HTTP头--MIME类型
注册MIME类型

扩展名 MIME类型
.wbmp image/vnd.wap.wbmp
.wml text/vnd.wap.wml
.wmlc application/vnd.wap.wmlc
.wmls text/vnd.wap.wmlscript
.wmlsc application/vnd.wap.wmlscriptc
.wsc application/vnd.wap/wmlscriptc

Wap网站测试方法
平台:Windows 2003 Sserver Service Pack 1 + IIS 6.0
网络:ADSL + 路由器(TP-Link)

1.路由器端口映射
把对广域网服务端口的访问重定位到指定IP地址机器。
本机内网IP:192.168.1.101
路由器的IP:125.110.9.30(外网)

2.手机上网GPRS传输方式。
手机访问地址:http://125.110.9.30/Wap/Index.wml


<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
    <card title="小苹果">  
      <p>Hello World!</p>
    </card>
</wml>

注意文件编码。
虚拟主机商说它的空间支持WAP,可是不支持WML文件。手机访问WML文件总显示未知文件格式,估计IIS不设置,真会忽悠。

查看全文 | 分类(WAP) | 访问(219) | 编辑