WAP中的ASP技术(3)
发布时间:2008-05-18 13:30:00
WML基本的语言
"p" element
作用与HTML一样,只是如果你想显示文字这个就是必须的。
"do" element
实际上每个WAP应用必须支持导航条。do标签最主要的type属性的值就是accept,这个意味着当你按下软键一个新的选项会被加到列表中来。label属性指定显示的文字。另外是一些选项:
go - 导航到另外一个卡片或板块中去。他需要href 属性。
prev - 导航到上一个卡片中去
refresh - 刷新显示。
noop - 无
Anchor
作用和HTML中的<A>一样的。在WML中Anchor链接的作用和do差不多,唯一的不同就是Anchor不以选项的形式显示。
<anchor>
Go to card 2
<go href="#card2"/>
</anchor>
变量
WML结合变量的办法有一点不同于HTML和javascript。WML的变量不仅可以被WMLScript来调用,还可以通过card直接用于WML文档。换句话说就是变量不仅可以由用户直接输入,同时也可以由setvar元素来设置。当然变量能够被脚本来操作,但这个不是必须的!这个观点必须被更进一步的强调和阐明。例如,你可能需要一个card来获得用户的名字,下一个card就显示"Hello,飞刀",我
们就可以这样"Hello,$(firstname)",有点像PHP,是不是,这个在传统的HTML中是不可能办到的!
既然变量的值能够在各个card之间保存,那么它们就经常被用于保存状态信息,支持一些复杂的交互式WAP服务。这种方法的一个问题就是当整个deck不得不重新引用时,这些状态可能与用户的浏览不能保持同步。所以,一些事件和属性就被用来捕获这些事件(onenterofrward 和 onenterbackward).刷新则根据一些变量的值被用做更新card.
用户输入
当然,为了使你的页面变得更加的强大,变量就需要储存(接收)用户的标准输入。这一切通过一些类似于HTML的元素来完成.
input - 很像HTML,用户通过手机的键盘来输入。你能够想像,这种输入就不像我们使用PC上的键盘一样实用,所以我们应当尽量简化这种输入方式,有可能尽量使用select元素来供用户选择。name属性是这个变量的名字,缺省值和大小的属性显然也是必须的。format为输入入口指定了一个输入面具。其它的请查看其它资料,在这我就不一一讲述了!
select/option - 用户选项的列表。同样也很像HTML:
<select name='movie'>
<option value='1'>Eyes Wide Shut</option>
<option value='2'>Notting Hill</option>
:
<option value='13'>Buena Vista Social Club</option>
</select>
multiple=true属性告诉用户代理(浏览器)多项选择是被允许的. onpick事件发生于一个选项被选择/被取消时.
Postfield - 很像html中的hidden属性,它将不显示在屏幕中。它能同时将name与value传送给服务器.
Fieldset - 包含一大堆的信息强迫手机在一个屏幕中显示,当然这得看手机的能力了
其它的元素
img元素也同样被支持,但是你得使用一种特殊的图片格式,名叫WBMP.因为WAP手机拥有有限的内存和储存空间。这种新的格式能够让WAP设备快速的理解和生成图片。Wireless bitmaps的生成,可以通过下载一个Photoshop和Paint Shop Pro的插件就可以搞定了。最后大家要记住在你的服务器上设置正确的MIME类型,下面我列出了所有与WAP有关的MIME:
wml text/vnd.wap.wml
wmlc application/vnd.wap.wmlc
wmlsc application/vnd.wap.wmlscriptc
wmlscript text/vnd.wap.wmlscript
ws text/vnd.wap.wmlscript
wsc application/vnd.wap.wmlscriptc
wmls text/vnd.wap.wmlscript
wbmp image/vnd.wap.wbmp
一些传统的强调元素也被支持,比如:em,i,b,small,strong等等,用法也和HTML一样。BR也同样被支持,不过写法有点不同,毕竟是XML嘛,要写成这样<br />
最后我们来看看time对象和ontimer事件,time对象保存着至card被调用至今的时间,如果我们定了ontimer事件,那么ontimer事 件就会被激发.
还有很多我也懒得写了,希望对你们建设WML网页没有什么影响.
WAP 的开发问题
很不幸的是,事情并不是我们想像的那么简单,不同的WAP手机总是有一些小的不同的地方,就像M$的javascript与NS的不同一样。例如,NoKia 7710这样第一部在挪威出售的WAP手机,就不能正确的支持POST方法。
另一个限制就是deck的大小的问题。有些手机(Nokia 7110)就是不支持超过1.4K的WML文档,WAP网关能够将你的WML文档压缩成更小的二进制格式,但是你也不要希望奇迹出现。这时不仅是Nokia 7110支持的东东不能显示,一些强调标帜也被忽略了,另外fieldset标帜也很轻松地被它忽略了,是不是很烦!?嘿嘿,当你在仿真器上做出很cool的页面,然后再到手机上一看,嘿嘿,砸了手机是你的第一选择.
虽然Nokia Toolkit 1.2仿真器上支持cookies,但是第一批WAP手机就是不支持,这就意味着你将和你的ASP中的Session,说再见,至少也是很长的一段时间


猜你喜欢
- 测试用例我们分别在用户数据库(testpage),tempdb中创建相似对象t1,#t1,并在tempdb中创建创建非临时表,然后执行相应的
- 要想成功的进行字符串的匹配需要使用到正则表达式模块,正则表达式匹配规则以及需要被匹配的字符串。在这三个条件中,模块与字符串都是准备好的,只有
- 一、时间对象timetime模块使用的是C语言函数库中的函数。只能处理1970/1/1到2038/12/31之间的数据。1.测量运行时间方法
- 一.图像采样处理原理图像采样(Image Sampling)处理是将一幅连续图像在空间上分割成M×N个网格,每个网格用一
- 1. 项目背景视频传输: 在一台电脑上播放视频(捕捉摄像头画面),同局域网内另一台电脑上实时播放,尽量不卡顿。先放最后的照片,和用gif展示
- 第一次用Python写这种比较实用且好玩的东西,权当练手吧游戏说明:* P键控制“暂停/开始”* 方向键控制贪吃蛇的方向源代码如下:from
- 本文实例讲述了Python迭代器定义与简单用法。分享给大家供大家参考,具体如下:一、什么是迭代器迭代,顾名思义就是重复做一些事很多次(就现在
- 无论是对于刚接触编程的初学者,还是已经工作的程序员,哪一门编程语言更火,更有价值和前景,似乎是永远有争议的话题。下面来对比说以下python
- 一 、MySQL版本查询1)登录mysql首先Window+R然后在命令行里输入mysql -u此处填你的mysql账号(注意要加-u) -
- 最近因为工作的需求,需要对mysql中数字进行格式化,但发现网上的资料较少,索性自己总结一下,方便自己也帮助有需要的朋友们,下面话不多说,来
- <!--#include file="config.asp" -->&nbs
- 当地址栏没有参数"id"时: 代码如下:Request.QueryString["ID"] == n
- 这一篇复习一下ECMAScript规范中的基础语法,英文好的朋友可以直接阅读官方文档。JavaScript本质上也是一种类C语言,熟悉C语言
- Python爬虫:一些常用的爬虫技巧总结爬虫在开发过程中也有很多复用的过程,这里总结一下,以后也能省些事情。1、基本抓取网页get方法imp
- 1、引言小丝:鱼哥, 请教你个问题。小鱼:你觉得你得问题,是正儿八经的吗?小丝:那必须的, 人都正经,何况问题呢?小鱼:那可不敢说, 你得问
- 首先,未来Python完全取代Java的可能性并不大,但是Python的发展确实能够挤占一部分Java的应用空间。Python语言在最近几年
- 👀前言代码出现异常而报错再正常不过了,但为什么要处理异常?由于异常的存在,代码运行时会出现一大堆的红色字体提示,对于程序员还好,见红色报错见
- 本教程为大家分享了oracle 11g r2安装教程,供大家参考,具体内容如下一、环境脚本简单配置#!/bin/bashmv /etc/yu
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN&
- 按时间删除文件# importing the required modulesimport osimport shutilimport ti