首页/Home Web Mobile (XHTML MP) XHTML MP 所失去的 WML 的特征 - (续)

XHTML MP 所失去的 WML 的特征 - (续)

PrintE-mail
Wednesday, 03 September 2008 04:57  
Article Index
XHTML MP 所失去的 WML 的特征
XHTML MP 不支持对软键编程
All Pages

 XHTML MP 不支持对软键 (softkey) 编程

 可编程软件是 WML 的一个非常棒的特征. WML 的 <do> 标签可以用来对软键编程. 用户可以通过按移动电话上的左软键或右软键非常方便地选择常用选项.

在 XHTML MP 中你无法对软键编程. 一种替代方案是利用 accesskey 属性. accesskey 属性可用于指定键盘快捷键. 锚链接和提交按纽支持 accesskey 属性. 这是一个例子:

<a accesskey="1" href="/p1.xhtml">XHTML MP 教程第一部分</a><br/>
<a accesskey="2" href="/p2.xhtml">XHTML MP 教程第二部分</a><br/>
<a accesskey="3" href="/p3.xhtml">XHTML MP 教程第三部分</a>

如果用户按下键盘上的 "1" 键, WAP 浏览器将直接跳转到 "p1.xhtml". 有了 accesskey 属性, 用户能够通过在 XHTML MP 页面中点击一下就触发某个动作. 这种行为与通过软键所能实现的类似.

WAP CSS 的 -wap-accesskey 属性可用 accesskey 属性的一个替代选项.

在一些诺基亚的 WAP 浏览器上, 所有带有 accesskey 属性指定的键盘快捷键的锚链接和提交按纽都会自动被包含在选项菜单中. 用户可以通过点击左侧的软键来打开选项菜单. 选项菜单中锚链接的标签是被 <a></a> 标签所包围的文本. 对于图片链接和提交按纽, 菜单选项中的标签分别是 <img> 标签的 alt 属性值和 <input> 标签的 value 属性值. 例如:

<a accesskey="0" href="/p1.xhtml">XHTML MP 教程第一部分</a><br/>
<a accesskey="1" href="/p2.xhtml">
  <img src="/pic2.gif" height="20" width="20" alt="XHTML MP 教程第二部分" />
</a><br/>

<form action="xhtml_mp_tut.php" method="get">
  <p>
    你最喜欢本 HTML MP 教程的哪一部分?<br/>
    <input type="text" name="tut_part" title="编辑" /><br/>
    <input accesskey="5" type="submit" value="提交表单" />
  </p>
</form>

在上述 XHTML MP 例子中, 粗体文本在 "选项" 菜单中将变成标签. 如果太长的标签将会被截断.

要注意的是该特征在非诺基亚浏览器上是无效的.

XHTML MP 不支持 <u> 标签

在 WML 中, 标签 <u> 可用来对某些文本加下划线.

标签 <u> 在 XHTML MP 中是不存在的. 要想在 XHTML MP 中对文本加下划线, 你得用 WAP CSS 的 text-decoration 属性. 例如, 要想给所有标题1的文本加下划线, 你可以在你的 XHTML MP 页面的 WAP CSS 样式单中加入输入如下的样式表述:

h1 {
  text-decoration: underline
}

XHTML MP 的输入字段不支持格式化属性

在 WML 中, 你可以通过对 <input> 元素的格式属性指定值来限制用户可以在某输入字段中可输入的字符类型和数量.

在 XHTML MP 中, <input> 元素的格式属性已经被删除了. 替代方案是利用 WAP CSS 的 -wap-input-format 属性. -wap-input-format 属性采用了与格式化属性有着相同语法的输入遮罩. 举个例子, 要限制所有输入字段只接受五位数字, 你可以在你的 XHTML MP 页面的 WAP CSS 中输入下面这段样式表述:

input {
  -wap-input-format: "5N"
}

你可以从网上找到关于 -wap-input-format 属性的更多资料.

XHTML MP 不支持用锚链接发送数据

在 WML 中, 向服务器提交用户数据是通过锚链接实现的, 像这样:

<p>
  你叫什么名字?
  <input name="name"/><br />
   你最喜欢本 HTML MP 教程的哪一部分?
  <input name="tut_part"/><br />
  <anchor>
    <go method="get" href="/xhtml_mp_tut.php">
      <postfield name="name" value="$(name)" />
      <postfield name="tut_part" value="$(tut_part)" />
    </go>
    发送数据
  </anchor>
</p>

XHTML MP 不支持通过锚链接发送数据. 必须用提交按纽实现. 下面这段 XHTML MP 标记与前面的 WML 标记做的是同一件事. 关于向服务器提交数据的进一步细节将会在此教程的 "在 XHTML MP 中向服务器提交表单数据" 中讲述.

<form action="xhtml_mp_tut.php" method="get">
  <p>
    你叫什么名字?<br />
    <input name="name" /><br />
      你最喜欢本 HTML MP 教程的哪一部分?<br />
    <input name="part"/><br />
    <input type="submit" value="提交数据" />
  </p>
</form>


 

回复

留个脚印儿吧.


回复