曝光台 注意防骗
网曝天猫店富美金盛家居专营店坑蒙拐骗欺诈消费者
字显示的方式。mode 值为“ n o w r a p”,一些浏览器会
采用不换行水平滚动显示的方式显示文字;如果mode 值为“ w r a p”,文字会以H T M L的通常段
落格式显示,并且在需要时换行。元素< p >的属性a l i g n的值为l e f t、r i g h t和c e n t e r,用来指定段落
中文字排列的方式(和元素< table >不同)。
W M L中有表示元素如< b >、< i >和< u >,但没有标题元素(如H T M L中的元素< h n >)。所以你
只能用表示元素或段落元素来指定标题。虽然现在大部分带WA P的移动电话都可以显示黑体和
斜体文字,并且今后更多的移动电话都会带有这个功能,但你也不要依靠浏览器去实现这些元
素的功能。另外你也不要用表示元素传递表达信息。例如,如果用< b i g >作为一个标题的格式,
若浏览器不能显示大的字符,它完全可能忽略这个元素,也不知道这些字是标题。同样,也要
避免使用下划线文字,因为在一些浏览器中下划线很像是一个链接。
浏览
当你为小型产品开发应用程序时,浏览是最难令人满意的事情之一。下面是一些有用的提
632使用XML 高级编程
下载
表1 4 - 4
a l i g n的值含义
“L” 左边
“R” 右边
“C” 居中
示:
• 用元素< a >和< b r / >生成一个浏览选择列表。如果选项超过9个,用“ M o r e . . .”链接到一个
新的列表。
• 在每一张卡片里要确保用户可以随时浏览上一页、下一页或者回到一个人人都熟悉的起始
页面。例如,在一个复杂的菜单层次中让用户可以随时回到“主菜单”。
• 为用户提供回到熟悉站点的快捷方式。避免用户为了返回到“主菜单”,要点击1 0次“返
回”键的情况发生。
• 对链接使用短名称,避免太多的空格。
下面是一个浏览选项列表的例子,大多数应用程序包括的卡片类型有:
程序清单1 4 - 6
14.3.7 使用计时器
计时器可以用来帮助你在卡片之间浏览。元素< t i m e r >可以在一段指定时间后生成一个
o n t i m e r事件。元素< t i m e r >的结构如下:
程序清单1 4 - 7
属性n a m e指定变量的名称。计时器设定为变量V的值。如果没有指定的变量或者指定变量
没有数值,计时器设定为数值属性t i m e的值。时间以十分之一秒为单位。
元素< t i m e r >的理想用法是在服务启动之前短时间显示一张卡片或文档上的商业信息。例如,
如果用户想要链接一个开放餐馆的名单列表,最先显示的卡片是一个餐馆的标识,几秒钟后,
显示餐馆列表的卡片,这个过程同运行程序的屏幕显示一样,只不过现在是用于给产品或服务
做广告。元素< t i m e r >的其他应用例子包括:
• 每隔一段时间显示一条简短的帮助信息。移动电话上这个功能很普遍,如果用户使用停止
一段时间,帮助信息就会自动显示。
• 引导用户穿越一系列卡片,如一个长的新闻故事。如果用户没有任何动作(没有按任何键),
服务将会自动调用下一张卡片,也就是说我们假定用户会选择下一张卡片。这种方式产生
第14章无线应用协议使用633 下载
了一种有效的“不需用手”的浏览服务。
14.3.8 事件处理器
为了捕捉一个o n t i m e r事件,要使用事件处理器属性ontimer 或元素< o n e v e n t >。属性o n t i m e r
在卡片元素中定义。属性的值可以是一个U R L或一个片段标识。下例中ontimer 事件将会激发下
一张卡片的加载:
程序清单1 4 - 8
在这个例子中,第一张卡片激活后约1 0秒钟生成o n t i m e r事件。许多开发者都发现在卡片元
素中使用事件处理器属性o n t i m e r十分方便。但你也可以用元素< o n e v e n t >去捕获任何一个有名称
的事件。在下面的例子中元素< o n e v e n t >位于元素< c a r d >中,用来捕获一个o n t i m e r事件:
程序清单1 4 - 9
可以用< o n e v e n t >元素指定事件绑定,或者将事件绑定作为事件处理器的一个属性(参见表
1 4 - 5)。这些可以在元素< c a r d >和元素< t e m p l a t e >中指定。元素< c a r d >中的事件绑定优先权总是
高于元素< t e m p l a t e >中同一类型的事件绑定。元素< d o >也有类似的“遮盖”规则,我们在以后
的章节中将会看到。
634使用XML 高级编程
下载
表1 4 - 5
事件事件
元素
属性
元素
属性
< t i m e r > i d < o n e v e n t > i d
c l a s s c l a s s
n a m e t y p e
v a l u e
在1 4 . 3 . 1 0节“任务和菜单”中,我们还将提到o n e v e n t事件,o n e v e n t事件的主要用途就是将
任务和一个特定类型的事件绑定在一起。
14.3.9 使用变量
变量可以用来在几个文件之间保存状态信息。一个变量就是一个具有数值的名称。元素
< s e t v a r >用来将数值赋予一个变量:
程序清单1 4 - 1 0
属性n a m e确定变量名称,属性v a l u e确定变量的值。元素< s e t v a r >可以在元素< o n e v e n t >和元
素< d o >里使用。而且,变量名称通过元素< i n p u t >和元素< s e l e c t >和一个值绑定在一起。
为了在内容中包括变量的值,采用了符号$ v a r n a m e或$ ( v a r n a m e )(后者更常用)。
程序清单1 4 - 11
一个变量的取值范围称为上下文。元素< c a r d >上的n e w c o n t e x属性可以产生一个新的上下文。
当生成一个新的上下文时,所有的变量值和历史列表被清除了。所以你可以利用n e w c o n t e x属性
(像上例一样)来保证前面服务所使用的一些旧变量不会和你的变量发生冲突。
中国航空网 www.aero.cn
航空翻译 www.aviation.cn
本文链接地址:
XML高级编程下(43)