![]() |
Как удалить мувиклипы созданные с помощью duplicateMovieClip
Доброе время суток
Имеем while (j>0){ duplicateMovieClip("_root.TransResp.TransTemp", "TransTempMC"+i, i); setProperty("TransTempMC"+i, _y, y); setProperty("TransTempMC"+i, _x, x); j--; i++; } надо потом все что насоздавали удалить нахрен конструкция типа while (i>0){ "_root.TransResp.TransTempMC"+i+".removeMovieClip"; } почему то не работает подскажите как сделать правильно |
_root.TransResp["TransTempMC"+i].removeMovieClip();
|
_root.unloadMovie();
|
MovieClip.prototype.onLoad = MovieClip.prototype.removeMovieClip;
:D |
ну, во-первых чуть переписать надо
while (j>0) { duplicateMovieClip("_root.TransResp.TransTemp", "TransTempMC"+i, i); setProperty("_root.TransResp.TransTempMC"+i, _y, y); setProperty("_root.TransResp.TransTempMC"+i, _x, x); j--; i++; } а то не достучишься до клипов "TransTempMC" ----------- во-вторых сделай так: _root.duplicateArray = []; while (j>0) { duplicateMovieClip("_root.TransResp.TransTemp", "TransTempMC"+i, i); setProperty("_root.TransResp.TransTempMC"+i, _y, y); setProperty("_root.TransResp.TransTempMC"+i, _x, x); duplicateArray.push(_root.TransResp["TransTempMC"+i]); j--; i++; } //===================================== deleteAll = function() { for(var i=0;i<_root.duplicateArray.length;i++) { _root.duplicateArray[i].removeMovieClip(); } delete _root.duplicateArray; } //===================================== // это для кнопки on (release) { deleteAll(); } |
2УильямБрэдберри
можно ведь массив и не городить на самом деле... все равно нужен будет цикл... достаточно запомнить последнее значение переменной 'i' при дублировании клипов... while (j>0) { duplicateMovieClip("_root.TransResp.TransTemp", "TransTempMC"+i, i); setProperty("_root.TransResp.TransTempMC"+i, _y, y); setProperty("_root.TransResp.TransTempMC"+i, _x, x); j--; i++; } delCount = i; deleteAll = function() { for(var i=0;i<delCount;i++) { _root._root.TransResp.TransTempMC[i].removeMovieClip(); } delete delCount; } все то же самое, зато лишнего массива нету :) ...а если уж делать массив, то лучше, наверное, сделать его как for (i in duplicateArray) {...} - при небольшой и средней длине массивов это работает быстрее (немного, но все же), чем обычный фор :) |
| Часовой пояс GMT +4, время: 01:59. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.