?? wap初級教程(4)—桌面deck.htm
字號:
href="javascript:doZoom(14,17)">中</A> <A
href="javascript:doZoom(12,15)">小</A>】【<A
href="javascript:window.print()">打印</A>】【<A
href="javascript:window.close()">關閉窗口</A>】 </DIV></TD></TR>
<TR>
<TD vAlign=top align=middle height=80><FONT
color=#999999>日期:2004-08-02 人氣:
<SCRIPT language=javascript
src="WAP初級教程(4)—桌面DECK.files/Read.php"></SCRIPT>
出處: </FONT><BR>
<TABLE borderColor=#ffffff cellSpacing=1 cellPadding=0 width=468
align=center border=0>
<TBODY>
<TR>
<TD>
<SCRIPT language=javascript
src="WAP初級教程(4)—桌面DECK.files/Banner_4.Js"></SCRIPT>
</TD></TR></TBODY></TABLE></TD></TR>
<TR>
<TD class=article id=Zoom>
<TABLE class=bfont cellSpacing=2 cellPadding=2 width="92%"
align=center border=0>
<TBODY>
<TR>
<TD height=25>
<DIV align=center><SPAN style="LETTER-SPACING: 2pt"><A
name=6></A><SPAN style="LETTER-SPACING: 2pt"><SPAN
class=font>桌面 (DECK)</SPAN></SPAN> </SPAN></DIV></TD></TR>
<TR vAlign=top>
<TD height=1021>
<TABLE class=bfont cellSpacing=0 borderColorDark=#ffffff
cellPadding=3 width="100%" borderColorLight=#808080
border=1><TBODY>
<TR>
<TD width="24%"><SPAN class=size>· <A
href="http://www.7880.com/Info/Article-14f4fd80.html#1">XML說明</A></SPAN></TD>
<TD width="27%"><SPAN class=size>· <A
href="http://www.7880.com/Info/Article-14f4fd80.html#2"><wml></A></SPAN></TD>
<TD width="22%"><SPAN class=size>· </SPAN><A
href="http://www.7880.com/Info/Article-14f4fd80.html#3"><head></A></TD>
<TD width="27%"><SPAN class=size>· <A
href="http://www.7880.com/Info/Article-14f4fd80.html#4"><template></A></SPAN></TD></TR>
<TR>
<TD width="24%"><SPAN class=size>· <A
href="http://www.7880.com/Info/Article-14f4fd80.html#5"><card></A>
</SPAN></TD>
<TD width="27%"><SPAN class=size>· </SPAN><SPAN
class=size9><SPAN class=size><A
href="http://www.7880.com/Info/Article-14f4fd80.html#7">不同瀏覽器指標</A></SPAN></SPAN></TD>
<TD width="22%"> </TD>
<TD width="27%"> </TD></TR></TBODY></TABLE><BR><SPAN
class=size>由于網絡帶寬以及某些WAP服務器DECK傳輸的限制,所以DECK越小越好,最好不要超過1.2K。如果你的需求很復雜,最好分成幾個DECK來完成。
</SPAN>
class=size></SPAN>
<TABLE class=font cellSpacing=0 cellPadding=0 width="100%"
border=0>
<TBODY>
<TR bgColor=#eeeeee>
<TD height=64><?xml version="1.0"?>
<BR><!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML
1.1//EN" <BR>
"http://www.wapforum.org/DTD/wml_1.1.xml">
<BR><BR><wml> <BR> <head> <BR> . <BR> .
頭信息......<BR> . <BR> </head> <BR>
<template><BR> .<BR> . 模板定義...... <BR> .
<BR> </template> <BR> <card><BR> .
<BR> . 內容......<BR> . <BR> </card><BR>
.<BR> . 其他card(可有可無)......<BR> .
<BR></wml></TD></TR></TBODY></TABLE><BR>XML說明 <SPAN
class=size><A
href="http://www.7880.com/Info/Article-14f4fd80.html#6">[TOP]</A></SPAN><A
href="http://www.7880.com/Info/Article-14f4fd80.html#5"
name=1> </A><BR>
<P>DECK開頭必須指明以下的XML類型聲明: </P>
<TABLE class=font cellSpacing=0 cellPadding=0 width="100%"
border=0>
<TBODY>
<TR bgColor=#eeeeee>
<TD class=size height=19><?xml version="1.0"?>
<BR><!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML
1.1//EN" <BR>
"http://www.wapforum.org/DTD/wml_1.1.xml"></TD></TR></TBODY></TABLE>
<P>第一行指出XML版本,緊跟的文檔類型(DOCTYPE)聲明指出所引用的語言標準定義(wml_1.1.xml的內容可以察看本教程附錄中的<A
href="http://www.7880.com/Info/Article-14f4fd80.html?ReViewID=311">DTD</A>說明)。</P>
<P>這兩句的位置和順序不可更改,而且中間不能有空行。<BR></P><wml> <A
href="http://www.7880.com/Info/Article-14f4fd80.html#6">[TOP]</A><A
href="http://www.7880.com/Info/Article-14f4fd80.html#5"></A>
<A name=2></A><BR>語法:
<P><wml>標簽和HTML中的<html>標簽一樣,用來表明這是一個WML的DECK。xml:lang屬性來指定文檔的語言,比如<wml
xml:lang="zh">表示文檔語言為中文。<BR><BR><head> <SPAN
class=size><SPAN class=size><A
href="http://www.7880.com/Info/Article-14f4fd80.html#6">[TOP]</A></SPAN></SPAN>
<A name=3></A></P>
<P><head>標簽包含了該DECK的相關信息。<head>標簽之間可以包含一個<access>標簽和多個<meta>標簽。</P>
<P><access>語法:</P>
<TABLE class=font cellSpacing=0 cellPadding=0 width="100%"
border=0>
<TBODY>
<TR bgColor=#eeeeee>
<TD><access <BR> domain="STRING" <BR>
path="STRING" /></TD></TR></TBODY></TABLE>
<P><access>相當于HTML中的<BASE>標簽,指定該DECK的訪問控制信息,它的兩個屬性是可選的。</P>
<P>domain:指定域,默認值為當前域。<BR>path:指定路徑,默認值為"/",即根目錄。</P>
<P><meta>語法: </P>
<TABLE class=font cellSpacing=0 cellPadding=0 width="100%"
border=0>
<TBODY>
<TR bgColor=#eeeeee>
<TD><meta <BR> http-equiv="STRING" | name="STRING"
<BR> forua="true|false" <BR> content="STRING" <BR>
scheme="STRING" /></TD></TR></TBODY></TABLE>
<P>和HTML中<META>的類似,<meta>提供了該DECK的meta信息。<BR>包括一下三種情況<BR>name="name"
UP.Link Server忽略meta數據<BR> http-equiv="name" UP.Link
Server將meta數據轉為HTTP響應頭(同HTML) <BR> user-agent="agent"
UP.Link
Server直接將meta數據傳給手機設備<BR><BR>content屬性也是必選的,其內容根據屬性而定。scheme屬性目前尚不支持。forua為可選屬性,指定在該wml文件傳到客戶端之前,<meta>標簽是不是被中間代理刪除(因為傳輸的協議可能改變),默認值為false。<BR></P>
<P>目前支持的meta數據: <BR> <meta http-equiv="Cache-Control"
content="max-age=3600"/>指定DECK在手機內存緩存中的存儲時間段,默認的為30天(除非內存耗盡),在該期間,手機對于訪問過的DECK直接從緩存里調用。如果信息是對時間敏感的,可以用max-age指定DECK在緩存里的生存期,最小單位是秒,如果指定為0,則每次都需通過連接服務器來調用該DECK。<BR><BR> <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"/>。<BR><BR><template> <A
href="http://www.7880.com/Info/Article-14f4fd80.html#6">[TOP]</A>
<A
name=4></A><BR><template>元素聲明一個DECK級的事件/請求,對DECK頁面中所有CARD有效,當然某個CARD可以通過定義同名的事件來替代<template>聲明中的事件處理。
<P>語法: </P>
<TABLE class=font cellSpacing=0 cellPadding=0 width="100%"
border=0>
<TBODY>
<TR bgColor=#eeeeee>
<TD height=21><template <BR>
onenterforward="STRING" <BR> onenterbackward="STRING"
<BR> ontimer="STRING" /></TD></TR></TBODY></TABLE>
<P>onenterforward:當用戶通過<go>進入CARD時調入的鏈接。<BR>onenterbackward:當用戶通過<prev>退回CARD時調入的鏈接。<BR>ontimer:<timer>事件激活時調入的鏈接。</P>
<P>例子(其中涉及的其他命令參考其他章節): </P>
<TABLE class=font cellSpacing=0 cellPadding=0 width="100%"
border=0>
<TBODY>
<TR bgColor=#eeeeee>
<TD height=30><wml> <BR><template> <BR>
<do type="options" name="do1" label="default">
<BR> <prev/> <BR> </do>
<BR></template> <BR><card id="first"> <BR>
<!-該卡片將自動套用模塊中定義的事件處理過程--><BR> … <BR>
</card> <BR><card id="second"> <BR>
<!-使用空操作(noop)來屏蔽模塊中定義的事件處理過程-> <BR> <do
type="options" name="do1"> <BR> <noop/> <BR>
</do> <BR> … <BR></card> <BR><card
id="third"> <BR> <!-該卡片使用同名的事件處理替代模塊中提供的事件處理->
<BR> <do type="options" name="do1"
label="options> <BR> <go href="/options"/>
<BR> </do> <BR></card>
<BR></wml></TD></TR></TBODY></TABLE>
<P>另外可以參看<A
href="http://www.7880.com/Info/Article-14f4fd80.html?ReViewID=300">事件(EVENT)</A>。<BR><BR><card>
<A
href="http://www.7880.com/Info/Article-14f4fd80.html#6">[TOP]</A><A
name=5></A><BR>一個DECK可以包含多個CARD,每個CARD的內容可能不止一屏顯示,注意DECK、CARD和屏幕顯示范圍的關系。一個CARD用<card>和</card>包含。
</P>
<P>語法: </P>
<TABLE class=font cellSpacing=0 cellPadding=0 width="100%"
border=0>
<TBODY>
<TR bgColor=#eeeeee>
<TD height=18><card<BR> id="STRING" <BR>
title="STRING" <BR> newcontext="true|false" <BR>
ordered="true|false" <BR> onenterforward="STRING" <BR>
onenterbackward="STRING" <BR> ontimer="STRING" <BR>
xml:lang="STRING"> </TD></TR></TBODY></TABLE>
<P>每個CARD元素可以有一個標號(ID)和標題(TITLE)。當然,這都不是必須的。</P>
<P>id:CARD的名字,在DECK中唯一,可用作URL已進行跳轉。</P>
<P>title:CARD的標題,用戶BOOKMARK一個CARD時的名字。該屬性在某些用戶終端上會顯示出來。</P>
<P>newcontext:用來指示當跳轉到本CARD時,用戶終端(手機、模擬器等)是不是要清除以前保留的信息如變量、堆棧歷史記錄、終端狀態等。默認值為FALSE。</P>
<P>ordered:表明該CARD里的內容是按固定的順序顯示,還是按用戶的選擇來顯示。默認值是TRE。這點和HTML不同,CARD頁面里的內容可以按一定的順序顯示,默認的是按線性順序顯示,即按代碼的順序,但是,要注意的是,以下三個標簽必須按以下順序來寫<onevent> <timer> <do>,(這和以后要講的“事件”有關)。這樣做是為了方便填表單,當ordered設置為true時,如果一個表單的內容不能在一屏里顯示完,就分成多屏顯示;當ordered設置為false時,手機可以顯示一個概要CARD來總結有效的選項,用戶可以從中選取表單選項來填寫。</P>
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -