Просмотр полной версии : как убить функцию назначенную onEnterFrame
Есть некая функция н раз делающаая ляп-ляп н - всегда разное
function lap(){
....
}
ref=lap
сделал ссілку
в некий момент когд амне нужно сделать пару ляпов я надеваю ее на некий мувиклип
test_mc.onEnterframe=ref
но бівают моменты, когда мне нужно прервать выполнение етой функции несмотря на то что она не отработала свои н раз.
как это сделать?
delete ref не получается почему-то
Попробуй
delete test_mc.["onEnterframe"];
или
delete lap;
rojok-online
31.05.2004, 20:31
delete (test_mc.onEnterframe)
artfla$her
01.06.2004, 00:54
Можно и без скобок, если я не ошибаюсь.
test_mc.onEnterframe=null;
убить не убьёшь, но здоровье будет уже не то :)
Подвожу итог.
1) правильный синтаксис - delete reference - reference - объект или переменная, которую нужно уничтожить.
2) delete (reference ) - тоже работает, точно так же, как работает, к примеру, (random((num))) - лишние скобки погоды не делают.
3) test_mc.onEnterframe=null; - не уничтожает объект, а присвает ему ссылку на null. То есть onEnterFrame продолжает выполняться, но с пустым набором действий, так что этот способ нельзя считать правильным.
4) delete test_mc.["onEnterframe"]; - правильный синтаксис, но имхо, проще и понятнее delete test_mc.onEnterframe; Хотя, и это зависит от обстоятельств, но лично я считаю, что слишком редки ситуации, в которых нужно обращаться к onEnterFrame как к члену ассоциированного массива.
Dixi
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.