WML - Таймер
В предыдущей главе было описано, как события запускаются пользователями и как мы обрабатываем их с помощью обработчиков событий.
Иногда вы можете захотеть, чтобы что-то произошло без явной активации элемента управления пользователем. Да, WML предоставляет вамontimer событие для обработки этого.
Событие ontimer запускается, когда таймер карты отсчитывает от единицы до нуля, что означает, что его не происходит, если таймер инициализируется нулевым таймаутом.
Вы можете привязать задачу к этому событию с помощью элемента <onevent>. Вот синтаксис:
<onevent type="ontimer">
A task to be performed.
</onevent>
Здесь задача может быть <go>, <prev> или <refresh>.
Элемент <timer> WML:
Таймер объявляется внутри карты WML с элементом <timer>. Он должен следовать за элементами <onevent>, если они есть. (Если элементов <onevent> нет, <timer> должен быть первым элементом внутри <card>.) На карточке может присутствовать не более одного <timer>.
Элемент <timer> поддерживает следующие атрибуты:
Атрибут | Значение | Описание |
---|---|---|
имя | текст | Устанавливает имя для элемента. |
значение | количество | Задает таймер, по истечении которого таймер истечет. Таймауты указываются в единицах десятых долей секунды. |
класс | class_data | Устанавливает имя класса для элемента. |
Я бы | ID элемента | Уникальный идентификатор элемента. |
Ниже приведен пример использования элемента <timer>.
<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.2//EN"
"http://www.wapforum.org/DTD/wml12.dtd">
<wml>
<card id="splash" title="splash">
<onevent type="ontimer">
<go href="#welcome"/>
</onevent>
<timer value="50"/>
<p>
<a href="#welcome">Enter</a>
</p>
</card>
<card id="welcome" title="Welcome">
<p>
Welcome to the main screen.
</p>
</card>
</wml>
Когда вы загружаете эту программу, она показывает следующий экран:
Если вы не выберете данный Enter вариант, то через 5 секунд вы будете перенаправлены на Welcome страница и следующий экран отобразятся автоматически.