PDA

Просмотр полной версии : Возможно ли coбытия my.onRollOver и my.onRollOut объеденть в одну строчку?


storm_
16.09.2008, 15:31
я попробовал так:

my.onRollOver && my.onRollOut = function(){trace("ok");}

выбивает ошибку.
Какой тут правильный синтаксис?
Именно, что бы в одной строчке привязать одно действие к этим двум событиям. Понятно, что по отдельности всё работает на ура.

qazwsx
16.09.2008, 15:37
my.onRollOver = my.onRollOut = function(){trace("ok");}

onRollOver это переменная типа Function. Поэтому прировнять onRollOver 1 клипа к onRollOver другого а это все к функции можно...

Division
16.09.2008, 15:38
my.onRollOver = my.onRollOut = function(){trace("ok");}
Но лучше так не писать. Желательно писать так чтобы читабельно. Да и допустим тот же onRollOut заменить другой функцией в этом случае дольше чем если б код был написан "по-человечески" (:

storm_
16.09.2008, 16:15
Спасибо за ответы.
— Работает.
Для меня все-таки останется загадкой, почему не срабатывает перечисление с помощью «и» && ?

Division
16.09.2008, 16:19
Не потому ли что && - логический оператор?

storm_
16.09.2008, 16:37
Division, то есть вы хотите сказать, что обработчики событий нельзя перечислить
этим оператором? Я просто сейчас второстепенно от работы изучаю то, без чего получается код на 3000 строк, а мог бы получиться на 100. :)
Как по мне, перечисление обработчиков событий — вполне логическая операция,
может быть все-таки дело в синтаксисе?
Это просто мое мнение.

Division
16.09.2008, 16:49
Вы кроме ActionScript какой ещё язык знаете? (:
Я просто сейчас второстепенно от работы изучаю то, без чего получается код на 3000 строк, а мог бы получиться на 100.
Но его было бы нереально читать и редактировать. ИМХО.

qazwsx
16.09.2008, 16:52
Ага будет 100 строк, каждая шириной 4 экрана :D.
Мне больше беспокоет отсутствие возможностси сделать так...

var a:Number = 1||4;
trace(a==1) // true;
trace(a==4)//true;

Но в жестокой реальности флеша такого не будет:(

Автору:
Не стоит стремится к записи 50 методов в 1 строку.. Какой в этом смысл? Код обсалютно не читаем. Нужно писать так чтобы код был максимально читаем, и не беспокоится на счет этого. Компилятор многое оптимизирует в итоге байт код выгледет всеравно совсем иначе...

storm_
16.09.2008, 17:03
:) Раньше (1988-1992) баловался в Бейсике. А всякие
Assembler, C++, Java, PHP — не приходилось сталкиваться.
Вы считаете, что лучше к каждому событию прикрутить отдельно набор комманд, (не объеденяя их) так?
Судя по верхнему посту — так.
Спасибо всем за ответы.

Division
16.09.2008, 17:11
Я считаю что
function MyFunc() {
trace("ok");
}

my.onRollOver = MyFunc;
my.onRollOut = MyFunc;
лучше чем
my.onRollOver = my.onRollOut = function(){trace("ok");}

storm_
16.09.2008, 17:22
Спасибо.