![]() |
Удаление мувика или проблема с переменными
Проблема:
Делается меню, при клике на кнопу, атачится подменю на новый слой в этот мувик(подменю) передается его номер, ну а дальше он сам знает что делать. НО При первом клике все ок, а вот во второй и последующие разы всплывает проблема, почемуто скрипт передает номер в старый экземпляр мувика (которого по идее вообще недолжно уже существовать, и он находится на более низком слое если уж о нем говорить) а новый мувик неможет дальше работать из за того что он не получил свою переменную(номер свой). Дополнительная информация: слои идут начиная с -9000 и дальше по нарастающей -8999 -8998 итд Поповоду удаления, сначала я делаю причем привел removeMovieClip() и unloadMovie(); чтоб наверняка! Код:
if (_parent["lknp"+ab]<>undefined){но дальше интересней: аттачу мувик Код:
_parent.attachMovie("lknp0k", "lknp"+ab, -9000+_root.LC, {_x:50});второй то пишет что -9000+_root.LC = -8998 ну дальше я тоже несколько проверок сделал, все сводится что я не удаляю старый мувик перед созданием нового(((( Одно из двух либо он воспринемает более низкую глубину как более привлекательную для присвоения переменных, либо удаление мувика настолько долгое что он удаляется после того как я ему еже успеваю отослать переменную( Вопрос: Что посоветуете? как удалить Мувик? А забыл добавить, уже долго бьюсь над этим и воможно уже незамечаю очевидных вещей. Буду благодарен за помощь |
ты бы весь код выложил, непонятно что есть _root.LC и ab
|
this.createEmptyMovieClip("z", 2);
this.createEmptyMovieClip("z", 3); и нажми CTRL+ALT+V в окне Output увидишь что в одном клипе уживаются два мувика с однинаковым именем. Могут и три и 10 ужится. А вот в одном слое только один. |
removeMovieClip нужен для удаления программно созданного мувиеклипа то есть createEmptyMovieClip и attachMovie, unloadMovie нужен для мувиеклипов которые физически находятся в фреймах, установленные туда ручками:).
|
_root.LC это обычная нумбер переменная созданная для того чтоб слои накручивать,а "ab" это номер нажатой кнопки и и он используется для присвоения имени подменю и последующей передачи внутрь клипа в качестве переменной.
Вот собственно и код имя кнопки сначало три символа имени потом номер кнопки вроде sub121 Код:
var ab = this._name.substring(3, this._name.length);Нет, насчет того что клипы с одинаковыми именами могут существовать на разных слоях я вкурсе, но вот как распределяется приоритет? я думал что кто на более высоком уровне тот и прав(к нему по имени и идет обращение), но есть еще вариант что знак "-" не воспринимается и тогда -7 больше чем -5. Но не в этом суть. Почему у меня предидущий клип не ремувится? |
Собственно хочу отчитатся, досконально я уже не буду выяснять в чем дело, НО
после переноса всех слоев в положительную плоскость, а именно , -9000 было заменено на 1000, все встало на свои места, те переменные присваивались именно мувику на более высоком уравне. Следовательно, сделал я вывод, флеш при решении какой мувик главней в отрицательной плоскости выбирает тот у кокго номер слоя по модулю больше ( те -35 будет главней чем -10, но лежать мувик - 35 будет ниже чем -10 ). Вот собственно пока и все, если буду разбираться потом подробней может и другую причину найду, а пока пусть будет эта :cool: :bye: |
Privetik s Argentini menya zavut Sergio, u menya est odna provlemka pomoshite? nerabotaet loadVariables nezagrushaet muvik ta ukazivayu tak
loadVariables("musik.swf","target"); y on nepodgrushaetsa |
| Часовой пояс GMT +4, время: 17:06. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.