Пособие по написанию WAP-сайтов

       

Подробнее о приложении SkiConditions.wml



Подробнее о приложении SkiConditions.wml

Когда пользователь запускает приложение SkiConditions, дека SkiConditions.wmlсперва отображает названия различных регионов, знаменитых своими горнолыжными курортами. Затем, основываясь на выборе пользователя, дека загружает вторую деку определения региона. Например, если пользователь выбираетрегион Rockies, приложение загружает деку SkiRockies.wml. Приведем исходныйкод деки SkiConditions.wml:

&lt?xml version="1.0"?&gt &lt!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml"&gt

&ltwml&gt

&lthead&gt

&ltmeta http-equiv="Cache-Control" content="max-age=0" forua="true"/&gt

&lt/head&gt

&ltcard id="GetRegion"&gt

&ltp align="center"&gt

Ski Conditions

&lt/p&gt

&ltp align="left" mode="nowrap"&gt

Select Region



&ltselect&gt

&ltoption onpick="SkiWest.wml"&gtWest&lt/option&gt &ltoption onpick="SkiRockies.wml"&gtRockies&lt/option&gt &ltoption onpick="SkiMidwest.wml"&gtMidwest&lt/option&gt &ltoption onpick="SkiMidAtlantic.wml"&gtMid-Atlantic&lt/option&gt &ltoption onpick="SkiEast.wml"&gtEast&lt/option&gt

&lt/select&gt

&lt/p&gt

&lt/card&gt

&lt/wml&gt

Так же как и во всех деках формата WML, первые два ее элемента сообщают браузеру, какую из версий спецификации WAP поддерживает данное приложение. Внашем случае WML-страница поддерживает версию 1.0 языка XML и версию 1.1описания типа документа (DTD), разработанного ассоциацией WAP Forum.

&lt?xml version="1.0"?&gt &lt!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml"&gt

Далее, за информацией о версиях, каждый WML-файл начинается с тега <wml>.


Вконце каждого файла вводят </wml>, что означает окончание исходного кода

приложения. За <wml> следуют теги <head> и </head>, внутри которых находитсяинформация о самом исходном коде, включая метаданные и информацию обуправлении доступом. Многие программисты называют метаданные «данными оданных». Другими словами, в этом случае метаданные, которые считывает и обрабатывает браузер, сообщают ему, как трактовать данные.

&lthead&gt

&ltmeta http-equiv="Cache-Control" content="max-age=0" forua="true"/&gt

&lt/head&gt

Элемент <meta> позволяет точно определить метаинформацию для исходногофайла. В нашем случае строка http-eguiv="Cache-Control" сообщает браузеруWAP, что эта часть метаинформации используется системой кэширования памяти. Аналогично, строка content=max-age=0 сообщает браузеру, что максимальное время, в течение которого будет кэшироваться этот файл, равно нулю секунд;значит, браузер не будет кэшировать данные, а загружать данные с сервера каждый раз, когда они будут запрошены. Для этой книги значение нуля было выбрано для содействия процессу обучения читателя. При выборе нуля каждый раз,когда будут происходить изменения, они будут передаваться на телефон. В реальном приложении статическое меню, подобное этому, можно использовать поумолчанию в течение 30 дней. Последняя строка forua="true" определяет, чтозначение Cache-Control предназначено для телефона и не может быть измененокаким-либо промежуточным агентом.

Далее, за начальными элементами в исходном коде определяется единственнаякарта, которая в нашем случае называется GetRegion. Внутри GetRegion используется тег <р> для центрирования текста Ski Conditions и выравнивания по левомукраю текста Select Region, так же, как и названий регионов.

Далее, в исходном коде используется элемент <select> для показа списка регионов пользователю. Внутри <select> каждый регион имеет свою собственную опцию, которая определяет для браузера, какой файл загружать далее:

&ltselect&gt

&ltoption onpick="SkiWest.wml"&gtWest&lt/option&gt &ltoption onpick="SkiRockies.wml"&gtRockies&lt/option&gt &ltoption onpick="SkiMidwest.wml"&gtMidwest&lt/option&gt &ltoption onpick="SkiMidAtlantic.wml"&gtMid-Atlantic&lt/option&gt &ltoption onpick="SkiEast.wml"&gtEast&lt/option&gt

&lt/select&gt

Когда браузер встретит элемент <select>, он отобразит одну строку для каждойопции, определенной внутри этого элемента. Если <select> содержит несколькоразличных опций, пользователь сможет выбрать какую-либо из них посредствомклавиш «вверх» и «вниз» телефона.


Содержание раздела