![]() |
|
||||||||||
|
|||||
|
Регистрация: Jul 2003
Адрес: Мурманск
Сообщений: 300
|
Несложный вопрос:
в первом фрейме стоит : как я понял, я создал функцию "x" которая с постоянно будет проверять, равно ли "что-то" и "то-то" и выполнять "действие". Вопрос вот в чём: как удалить или отменить фукцию "х". |
|
|||||
|
не, ты не создал функцию "х", это функция срабатывает каждый раз при входе в кадр рута или мувика, смотря к чему ты ее прикручиваешь...и не принимает никаких параметров кстати:
delete _root.onEnterFrame удаляет функцию |
|
|||||
|
Регистрация: Jul 2003
Адрес: Мурманск
Сообщений: 300
|
thanks derhab!!!
А если таймлайн не сдвигается с места то функция не срабатывает??? Также если мы пишем "delete _root.onEnterFrame" то во всём руте все фукнции к которым прикручены "onEnterFrame" удаляются??? Тогда можно ли как-то проименовать функцию чтоб удалять только её а не все "onEnterFrame" ??? Вообще проблема у меня такая: надо сделать чтобы скрипт в реальном времени следил, например, за какой-то переменной : как только она изменяется, так сразу происходит событие. Я решил делать это с помощью функций, но может существует более безгиморный способ??? Заранее спасибо.... |
|
|||||
|
function lister() {
trace(arguments[2]); return (arguments[2]); } listener = {myValue: 0}; listener.watch("myValue", lister); Здесь myValue - свойство объекта listener. К объекту привязывается следящая функция lister, которая запускается при изменении/записи данных в myValue. Обратиться к значению myValue из тела функции можно так - arguments[2]. Функция должна возвращать новое значение свойства - т.е. arguments[2]. arguments в целом здесь равен [свойство, старое значение, новое значение, доп. параметр] Доп. параметр может передаваться функции, его надо указать в методе watch третьим аргументом. Вот такие пирожки с котятами ![]()
__________________
За двумя зайцами погонишься - от егеря по морде получишь |
|
|||||
|
Регистрация: Jan 2004
Адрес: нигде - не осталось на Земле свободных земель(
Сообщений: 1,176
|
а вот из хелпа:
// создаём объект
var myObject:Object = new Object();
// добавляем св-во отвечающее за скорость
myObject.speed = 0;
// пишем функцию, которая будет вызваться в случае изменения св-ва "speed"
var speedWatcher:Function = function(prop, oldVal, newVal, speedLimit) {
// проверяем не превышен ли лимит скорости
if (newVal > speedLimit) {
trace ("Вы слишком гоните.");
}
else {
trace ("Едете нормально.");
}
// возвращаем значение в св-во "speed".
return newVal;
}
// используем метод watch() для регистрации события изменения значения св-ва "speed", при этом в качестве параметров передаём:
// - имя св-ва, на изменение которого реагировать: "speed"
// - ссылка на функцию, которая должна при этом срабатывать: speedWatcher
// - предел скорости в качестве дополнительного параметра, определяемого пользователем: 55
myObject.watch("speed", speedWatcher, 55);
// присваиваем св-ву "speed" сначала значение 54, а потом - 57
myObject.speed = 54; // в окне вывода (output): Вы слишком гоните.
myObject.speed = 57; // в окне вывода (output): Едете нормально.
// убираем реакцию на изменение св-ва "speed"
myObject.unwatch("speed");
myObject.speed = 54; // это не вызовет сообщений в окне вывода (output)
Последний раз редактировалось FreeLander; 06.09.2004 в 13:58. |
|
|||||
|
.
|
Цитата:
myObject.speed = 54; // в окне вывода (output): Едете нормально. myObject.speed = 57; // в окне вывода (output): Вы слишком гоните. |
|
|||||
|
Регистрация: Jan 2004
Адрес: нигде - не осталось на Земле свободных земель(
Сообщений: 1,176
|
пардон), паст/копи, лень и невнимательность)
|
|
|||||
|
Регистрация: Jul 2003
Адрес: Мурманск
Сообщений: 300
|
Всем огромное спасибо!
Выручили! |
![]() |
Часовой пояс GMT +4, время: 16:04. |
|
|
« Предыдущая тема | Следующая тема » |
|
|