Справочник по Flash - white cat
Шрифт:
Интервал:
Закладка:
Во Flash 3 и Flash 4 tellTarget() была главным средством связи между двумя клипами фильмов (т.е. управления одним клипом из другого). Она использовалась для вызова таких функций, как play(), stop(), и gotoAndStop() с удаленными клипами фильмов. Во Flash 4, где в ActionScript были добавлены переменные, с помощью tellTarget() можно было также получать и задавать значения переменных удаленных клипов. Во Flash 5 такие действия лучше осуществлять с помощью оператора точки, ., и оператора обращения к массиву, []. Другой альтернативой функции tellTarget() является предложение with.
Некоторые особенности:
Функцию tellTarget() лучше было бы описать как предложение, поскольку для нее требуется блок предложений. Вопрос этот, однако, чисто академический, поскольку tellTarget() устарела.
Обычно она применяется, если нужно динамически назначить уровень удаляемого фильма.
Пример:
tellTarget("ball") {gotoAndStop("redStripes");_x +=300;}
Совместимость:
Используется с 3-ей версии Flash. Устарела в 5-ой версии
ifFrameLoaded - Выполняет код если загруженн определенный кадр
ifFrameLoaded
(Предложение)
Выполняет некоторый код, если загружен определенный кадр
Синтаксис:
ifFrameLoaded(scene, frame) { statement;}ifFrameLoaded(frame) { statement;}
Аргументы:
Описание:
Проверяет, доступно ли содержимое указанного кадра локально (скачано ли уже?). Используйте для создания прелоадера, то есть небольшой анимации, пока загружается остальная часть фильма. Разница между использованием _framesloaded и ifFrameLoaded() в том, что _framesloaded позволяет добавить if, или else, в то время, как ifFrameLoaded() позволяет указать количество кадров в одном простом выражении.
Начиная с Flash 4 следует использовать свойства _totalframes и _framesloaded с предложениями if-else для создания более гибкого предварительного загрузчика.
Пример:
if (_totalframes > 0 && _framesloaded == _totalframes) {gotoAndPlay("beginFrame");} else {gotoAndPlay(_currentframe - 1);}
Совместимость:
Используется с 3-ей версии Flash. Действие ifFrameLoaded устарело в Flash 5; используйте вместо него _framesloaded
Action
break
(Предложение)
Прекращает выполнение цикла
Синтаксис:
break()
Описание:
В простом цикле проверочное выражение является единственным фактором, определяющим прекращение выполнения цикла. Когда проверочное предложение простого цикла дает значение false, цикл завершается. Однако если цикл становится более сложным, может потребоваться остановка его выполнения независимо от значения проверочного предложения. Для этого используются предложения break и continue.
Предложение break предоставляет способ остановить процесс, продолжать который нет больше необходимости.
Например, можно использовать цикл for-in в программе проверки формы, которая обходит переменные текстовых полей ввода на временной диаграмме. При обнаружении пустого поля ввода мы предупреждаем пользователя о том, что он неправильно заполнил форму.
Прекратить процесс можно, выполнив предложение break, как показано в приведенном далее примере.
Обратите внимание, что в примере предполагается существование клипа с именем form, который содержит ряд объявленных входных переменных с именами input01, input02 и т.д.:
for(var prop in form) { // Если это свойство служит одним из наших // "входных" текстовых полей if (prop.indexOf("input") != -1) { // Если в поле формы пусто, // прервать операцию if (form[prop] == "") { displayMessage = "Пожалуйста, заполните форму полностью."; break; } // Все подпредложения после команды break пропускаются, // когда выполнена break }}// Отсюда возобновляется выполнение после окончания цикла,// вызванного командой break или присваиванием проверочному// выражению значения false
Предложение break можно использовать для прерывания цикла, который иначе был бы бесконечным. Это позволяет, скажем, выполнить предложения первой части блока и не выполнять предложения, следующие за if (условие) break:
while (true) { // Здесь идут начальные предложения if (condition) break; // Здесь идут последующие предложения}
Совместимость:
Используется с 4-ой версии Flash
break - Прекращает выполнение цикла
break
(Предложение)
Прекращает выполнение цикла
Синтаксис:
break()
Описание:
В простом цикле проверочное выражение является единственным фактором, определяющим прекращение выполнения цикла. Когда проверочное предложение простого цикла дает значение false, цикл завершается. Однако если цикл становится более сложным, может потребоваться остановка его выполнения независимо от значения проверочного предложения. Для этого используются предложения break и continue.
Предложение break предоставляет способ остановить процесс, продолжать который нет больше необходимости.
Например, можно использовать цикл for-in в программе проверки формы, которая обходит переменные текстовых полей ввода на временной диаграмме. При обнаружении пустого поля ввода мы предупреждаем пользователя о том, что он неправильно заполнил форму.
Прекратить процесс можно, выполнив предложение break, как показано в приведенном далее примере.
Обратите внимание, что в примере предполагается существование клипа с именем form, который содержит ряд объявленных входных переменных с именами input01, input02 и т.д.:
for(var prop in form) { // Если это свойство служит одним из наших // "входных" текстовых полей if (prop.indexOf("input") != -1) { // Если в поле формы пусто, // прервать операцию if (form[prop] == "") { displayMessage = "Пожалуйста, заполните форму полностью."; break; } // Все подпредложения после команды break пропускаются, // когда выполнена break }}// Отсюда возобновляется выполнение после окончания цикла,// вызванного командой break или присваиванием проверочному// выражению значения false
Предложение break можно использовать для прерывания цикла, который иначе был бы бесконечным. Это позволяет, скажем, выполнить предложения первой части блока и не выполнять предложения, следующие за if (условие) break:
while (true) { // Здесь идут начальные предложения if (condition) break; // Здесь идут последующие предложения}
Совместимость:
Используется с 4-ой версии Flash
call - Выполнить сценарий удаленного клипа
call
(Глобальная функция)
Вызывает из текущего скрипта скрипт, который прикреплен к указываемому кадру
Синтаксис:
call(frameLabel)call(frameNumber)
Аргументы:
Описание:
Функция call() выполняет сценарий, прикрепленный к кадру с меткой frmaeLabel или номером frameNumber.
Например, следующий код выполняет сценарий кадра 20 текущей временной диаграммы:
call(20);
Во Flash 4 call() использовалась для создания грубого подобия многократно используемой подпрограммы (не способной принимать параметры и возвращать значение). Во Flash 5 предпочтительнее использовать предложение function.
Отметим, что во Flash 5 при удаленном вызове сценария через call() переменные, объявленные посредством ключевого слова var, считаются локальными для этого сеанса выполнения и прекращают свое существование по завершении сценария. Чтобы создать нелокальные переменные в удаленно выполняемом сценарии, опустите ключевое слово var:
// Локальная переменная; умрет после выполнения сценарияvar x = 10;// Переменная временной диаграммы; сохраняется по завершенииx = 10;
Для вызова call() с кадрами вне текущей временной диаграммы воспользуйтесь функцией tellTarget()
В следующем примере выполняется сценарий в кадре 10 клипа box:
tellTarget ("box") {call(10);}
Совместимость:
Используется с 4-ой версии Flash. В Flash 5 рекомендуется использовать команду function().
comment - Вставить комментарии
comment
Указывает начало комментария. Любой текст между ограничителем и знаком конца строки является комментарием и игнорируется интерпретатором ActionScript.
Синтаксис:
// comment
Аргументы:
Пример:
Этот скрипт использует двойной слеш для идентификации первой, третьей, пятой и седьмой строк, как комментариев: