Введение в WMLScript и библиотека WMLScript Float
WMLScript - это язык сценариев для страниц WML, которые выводятся в браузере WAP.
WMLScript используется для:
- авторизации пользователя;
- создания диалоговых полей;
- просмотра сообщений об ошибках;
- доступа к возможностям агента пользователя и многого другого.
Что такое WML?
WML - аббревиатура от Wireless Markup Language (язык разметки для беспроводной связи). Это язык разметки, родственный HTML, но основывающийся на XML, и поэтому его синтаксис значительно строже, чем в HTML.
Язык WML применяется для создания страниц, которые выводятся в браузере WAP.
Страницы в WML называются колодами (DECKS), которые создаются как наборы карт (CARDS).
Что такое WMLScript?
WMLScript - это язык сценариев, которые используются на страницах WML. Он является облегченной версией языка JavaScript.
Сценарии на этом языке не встраиваются в страницу WML - она содержит только ссылки на адреса URL-сценариев.
Сценарий WMLScript перед отправкой браузеру WAP компилируется на сервере в байт-код.
Язык WMLScript является частью спецификации WAP.
Для чего используют сценарии WMLScript?
- для идентификации пользователя;
- локального создания полей сообщений и диалоговых полей, для просмотра сообщений об ошибках и более быстрого получения подтверждения;
- для доступа к возможностям агента пользователя.
Как используются сценарии WMLScript
Вызов на странице WML сценария WMLScript
Как уже было сказано, сценарии WMLScripts не встраиваются в страницу WML- эти страницы содержат только ссылки на адреса URL-сценариев.
Если в следующем примере выбрать метку "Вперед", то внешний сценарий направит пользователя на http://www.intuit.ru/first.wml:
<?xml version="1.0"?> <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml"> <wml> <card id="first" title="Go URL"> <do type="options" label="Вперед"> <go href="links.wmls#go_url('INTUIT')"/> </do> </card> </wml>
Строка с тегом go содержит ссылку на сценарий WMLScript, который находится в файле с именем links.wmls. Имя функции - go_url.
Страница WML с именем links.wmls имеет следующий вид:
extern function go_url(the_url) { if (the_url=="INTUIT") { WMLBrowser.go("http://www.intuit.ru/first.wml") } }
Отметим, что функция использует ключевое слово extern. При использовании этого ключевого слова функцию могут вызывать другие функции или события WML вне файла .wmls. Чтобы сохранить функцию приватной, удалите ключевое слово extern.