Главная
К библиотеке


Эффекты перехода в IE и их программирование

Кроме статических визуальных фильтров существуют фильтры перехода. С их помощью задается эффект появления и исчезновения блоков. Все вы можете их видеть по нашему телевидению.

В общем случае описание фильтра выглядит так:

{filter: revealtrans(duration=продолжительность, transition=тип)}

Продолжительность задается дробным числом, целая часть которого - секунды, дробная - миллисекунды. Типы переходов приведены в таблице слева, а справа можно посмотреть на эти переходы в действии:

0 - Box In
1 - Box Out
2 - Circle In
3 - Circle Out
4 - Wipe Up
5 - Wipe Down
6 - Wipe Right
7 - Wipe Left
8 - Vertical Blinds
9 - Horizontal Blinds
10 - Checkerbord Accross
11 - Checkerbord Down
12 - Random Dissolve
13 - Split Vertical In
14 - Split Vertical Out
15 - Split Horizontal In
16 - Split Horizontal Out
17 - Strips Left Down
18 - Strips Left Up
19 - Strips Right Down
20 - Strips Right Up
21 - Random Bars Horizontal
22 - Random Bars Vertical
23 - Random
Цикл
TEST
TEST
Visible -> Hidden Hidden -> Visible


Программирование фильтров.

Для задания параметров, запуска и остановки применяются следующие методы фильтров:

Apply(), Play(продолжительность), Stop

Кроме того для каждого элемента существует событие onFilterChange, которое вызывается если фильтр запустился, отработал или был изменен. Вызов метода Stop аналогично вызывает событие onFilterChange. Самыми важными свойствами фильтров являются: Transition и Status. Первое задает тип перехода (см. выше), второе показывает состояние фильтра (0 - остановлен, 1 - назначен, 2 - выполняется).

Фильтр работает при изменении атрибута стиля visibility, т.е. когда мы хотим показать спрятанный (hidden) или спрятать видимый (visible) элемент. Каждый элемент содержит коллекцию фильтров element.filters. Доступ к фильтру может быть осуществлен по его индексу. Если у элемента определен один фильтр, то доступ к нему осуществляется так: element.filters(0).

Общая процедура запуска выглядит так:

   element.filters(0).apply;
   element.style.visibility = "hidden"; // или "visible"
   element.filters(0).play(продолжительность);

Если мы программируем циклическое повторение фильтров, то необходимо проверить статус фильтра, и если он равен 2, то вызов метода play() приведет к ошибке.

Кроме указанных фильтров существует фильтр, который осуществляет изменение "видимости" путем изменения прозрачности объекта. Выглядит он так:

{filter: blendTrans(duration=продолжительность)}

Далее пример его применения. Заставить его работать так, как надо мне не удалось. Скорее всего это ошибки в реализации, как и в случае с визуальным фильтром glow.


Материал с сайта: http://exper.ural.ru
Hosted by uCoz