代码驿站移动版
频道导航
HTML/Xhtml
CSS
JavaScript
HTML5
PHP教程
ASP.NET
正则表达式
AJAX
ThinkPHP
Yii
MySQL
MariaDB
Oracle
MongoDB
Redis
DedeCMS
PHPCMS
帝国CMS
WordPress
Discuz
其它CMS
Zend Studio
Sublime
Notepad
Dreamweaver
Windows
Linux
Nginx
Apache
IIS
CentOS
Ubuntu
Debian
网站优化
工具资源
PHP源码
ASP.NET源码
其它源码
图标素材
按钮素材
字体素材
DedeCMS模板
帝国CMS模板
PHPCMS模板
WordPress模板
Discuz!模板
单页模板
开发软件下载
服务器软件下载
广告投放
联系我们
版权申明
软件编程
网页前端
移动开发
数据库
服务器
脚本语言
PHP代码
JAVA代码
Python代码
Android代码
当前位置:
主页
> >
WML学习之二基本格式和文件头
时间:2021-03-29 09:42:43 | 栏目: | 点击:次
基本格式和文件头
wml文件的一般格式:
<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
<head>
<access/>
<meta..../>
</head>
<card>
Some contents...
</card>
<wml>
结构看上去和HTMl文件很类似,对于每一个DECK,在其文档开头必须指明以下的类型声明:
<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
千万注意字母的大小写。对于一个DECK,其文件大小最好不要超过1.2K。
<wml>标签和HTML中的<html>标签一样,用来表明这是一个 WML的DECK,它有一个可选的xml:lang属性来制定文档的语言,比如<wml xml:lang="zh">表示文档语言为中文。
和HTML一样<head>标签包含了该DESK的相关信息。<head> 标签之间可以包含一个<access>标签和多个<meta>标签。
<access domain="域" path="/路径" />相当于HTML中的<BASE>标签,指定该DECK的访问控制信息,它用两个可选的属性,domain用来指定域,默认值为当前域, path用来指定路径,默认值为"/",即根目录。由于 <access>单独使用,所以要用/结尾,以后对于类似的情况不再赘述。
<meta 属性 content="值" scheme="格式" forua="true|false"/> 和HTML中的类似,提供了该DECK的meta信息。属性是必选的,包括一下三种情况
name="name" UP.Link Server忽略meta数据
http-equiv="name" UP.Link Server将meta 数据转为 HTTP 响应头(同HTML)
user-agent="agent" UP.Link Server 直接将 meta 数据传给手机设备,content属性也是必选的,其内容根据属性而定。scheme属性目前尚不支持。forua 为可选属性,指定在该wml文件传到客户端之前,<meta>标签是不是被中间代理删除(因为传输的协议可能改变),默认值为false。
目前支持的meta数据:
<meta http-equiv="Cache-Control" content="max-age=3600"/>指定DECK在手机内存缓存中的存储时间段,默认的为30天(除非内存耗尽),在该期间,手机对于访问过的DECK直接从缓存里调用。如果信息是对时间敏感的,可以用max-age指定DECK在缓存里的生存期,最小单位是秒, 如果指定为0, 则每次都需通过连接服务器来调用该DECK。
<meta user-agent="vnd.up.markable" content="false"/>和<meta user-agent="vnd.up.bookmark" content="指定的URL"/> 类似于普通浏览器的书签功能。当用户将一个CARD做了书签后,手机浏览器首先用一个标记记录该CARD,这个标记默认的是<card>标签中的title属性(以后会讲到),然后当用户选择了该书签以后,浏览器就会打开被记录的URL。但是因为在默认的情况下,手机会记录所有的DECK,所以,一般<meta>被用来使手机不要记录当前的URL,即
<meta user-agent="vnd.up.markable" content="false"/>。此外, 如果要为书签指定不同于当前DRECk的 URL,用<meta user-agent="vnd.up.bookmark" content="指定的URL"/>。
一个DECK可以包含多个CARD,每个CARD的内容可能不止一屏显示,注意DECK,CARD和屏幕显示范围的关系。一个CARD用<card>和</card>包含。<card>可以包含以下可选的属性:
<card id="name" title="label" newcontext="false" ordered="true" onenterforward="url" onenterbackward="url" ontimer="url">
*id属性用来指定CARD的名字,可用来在CARD间跳转,相当于在HTML中在页内跳转时用<A NAME="jumpHere">。
*title属性用来作为书签的标记,该属性一般不会显示在屏幕上。
*newcontext属性,默认值为false, 用来指示当跳转到本CARD时,手机是不是要清除以前保留的信息,包括变量,堆栈里的历史记录,重新设置手机状态等。
*ordered属性,默认值是true,表明该CARD里的内容是按固定的顺序显示, 还是按用户的选择来显示。这点和HTMl不同,CARD 页面里的内容可以按一定的顺序显示,默认的是按线性顺序显示,即按代码的顺序,但是,要注意的是,以下三个标签必须按以下顺序来写<onevent> <timer> <do>, (这和以后要讲的“事件”有关)。这样做是为了方便填表单,当ordered设置为true时,如果一个表单的内容不能在一屏里显示完,就分成多屏显示;当ordered设置为false时,手机可以显示一个概要CARD来总结有效的选项,用户可以从中选取表单选项来填写。
*onXXX属性,类似于HTML标签中的onXXX属性,用来捕捉事件,当事件被触发时执行指定的操作(任务),在这里是转向某个URL。
您可能感兴趣的文章:
Powershell小技巧之通过EventLog查看近期电脑开机和关机时间
IDEA配置GIT的详细教程
提高页面加载速度的几个方法小结
易语言设置组合框项目数值的方法
VMware Workstation虚拟机安装操作方法
相关文章
05-15
易语言打开文件件网页的方法
05-15
X86汇编调试环境搭建的过程
05-15
使用navicat导入sql文件的方法步骤
05-15
Discuz!论坛install.php书写错误漏洞
05-15
路由器安全有关的目录
JQuery
VUE
AngularJS
MSSql
MySQL
MongoDB
Redis
Linux
Tomcat
Nginx
网站首页
广告投放
联系我们
版权申明
联系站长