PDA

Просмотр полной версии : Как уничтожить MovieClipLoader() ?


Beta-tester
11.12.2007, 21:52
Здравствуйте!
Уже какой день бьюсь с проблемой. Пытался обойти её как-нибудь. Но вот всё-равно нужно либо уничтожить обьект
var loader:MovieClipLoader = new MovieClipLoader()

или заставить забыть его о всём, что было до(т.е. перестать закачивать/обрабатывать закачки начатые до определённого события)?

Очень благодарю за помощь!

CrazyFlasher
11.12.2007, 22:07
в АС2 никак нне оборвать...можете только удалить листенера

Beta-tester
11.12.2007, 22:22
в АС2 никак нне оборвать...можете только удалить листенера
Про удаление листнера знаю. Но мне надо прервать эти закачки и начать новые в эти же мувикипы(какбы разные страницы). Поэтому листнера придется создать опять, что чревато срабатыванием на прошлые не оборванные закачки. Использование для каждой страницы разных литнеров ИМХО не есть гуд! Да и необорванные закачки будут есть лишний трафик, а оно никому не надо.

Вообще никак выкрутиться нельзя?

etc
11.12.2007, 22:28
Никак, даже если выгрузить весь мувик.

Beta-tester
11.12.2007, 23:16
Вроде как эту проблему решил, но из-за наслоения других граблей незаметил этого :)

Вобщем вот ещё какие грабли:
1)Есть мувиклип. Как сделать так, чтобы при загрузке в него картинки она была не видна(поумолчанию _visible=false)?
Добавлено--------
Для конкретно моего случая появилась идея, как обойти эти грабли. Но в общем случае вопрос актуален, так сказать на будущее.
------------------

2)Есть файл qwe rty.jpg (именно с пробелом внутри!). Грузиться нормально. Но его имя преобразуется в qwe%rty.jpg , что мешает сравнить оригинальное имя с именем загруженного файла.
Всегда ли пробел будет заменяться на % ?
Можно ли как-нибудь обойти эти грабли кроме тупой замены пробела на % ?

etc
11.12.2007, 23:46
Пробел заменяться должен на %20.

Beta-tester
12.12.2007, 00:07
Пробел заменяться должен на %20.
Сорри. В спешке писал и очепятался. Да именно на %20 заменяется пробел.

Aziz Zaynutdinoff
12.12.2007, 01:21
1) на onLoadStart ставим target_mc._visible = false; или вообще перед loadClip установить видимость контейнера нулевой;
2) Если грузить из инета, то символ «пробел» не является валидным для url, так что либо путем замены, либо задавайте заранее валидные имена файлам.

Beta-tester
12.12.2007, 16:48
2) Если грузить из инета, то символ «пробел» не является валидным для url, так что либо путем замены, либо задавайте заранее валидные имена файлам.
Сорри за глупый вопрос:
Есть готовая функция, которая бы в строчке заменяла подстроки, в моём случае пробел на %20 ?
Не подумайте, что мне сложно написать вручную, но вот не хочется потом опять переписывать под что-то новое(как было с loadVars и MovieClipLoader() ), когда легче сразу юзать готовое и новое.

wvxvw
12.12.2007, 17:07
escape([String]);

Beta-tester
12.12.2007, 17:22
escape([String]);

Облом. Она % меняет на %25 , т.е. если допустим у меня есть файл qw erty(с пробелом).
После загрузки его им вернётся как qw%20erty, а обработав полученное имя escape() получим qw%2520erty(обрабатывать escape()'ом нужно и оригинал и полученное имя, потомучто escape и точки заменет.

etc
12.12.2007, 18:51
unescape

Beta-tester
12.12.2007, 19:57
unescape
спасибо, помогло!


1) на onLoadStart ставим target_mc._visible = false; или вообще перед loadClip установить видимость контейнера нулевой;
Незнаю почему, но у меня это не прокатывает. Если до загрузки сделать невидимым, то после загрузки картинка всё равно отображается.
Я не прав?

Вопрос остаётся открытым...

Dims
12.12.2007, 20:29
Незнаю почему, но у меня это не прокатывает. Если до загрузки сделать невидимым, то после загрузки картинка всё равно отображается.
Я не прав?

Вопрос остаётся открытым...

После загрузки полностью заменяется исходный mc, поместите его в mc-контейнер, и сделайте невидимым его.

Beta-tester
12.12.2007, 20:59
После загрузки полностью заменяется исходный mc, поместите его в mc-контейнер, и сделайте невидимым его.
Спасибо, я думаю это мне поможет!
Добавлено---------------------------------------------------------------
Спасибо, ещё раз помогло. Вроде работает. Теперь буду тестировать.

Заодно появился вопрос к более опытным коллегам:

Если вызван LoadClip, то обязательно произойдёт либо onLoadComplete, либо onLoadError? Я к тому, может произойти глюк и загрузка останется в бесконечном цикле?
Аналогичный вопрос касательно loadVars.

wvxvw
12.12.2007, 21:36
эти события возникают как реакция на определенные действия браузера, если браузер не закончит загрузку, и не выдаст сообщения об ошибке - соответственно и события не возникнут.

Beta-tester
12.12.2007, 22:05
эти события возникают как реакция на определенные действия браузера, если браузер не закончит загрузку, и не выдаст сообщения об ошибке - соответственно и события не возникнут.
т.е. логично, что если браузер стабильно работает, то однозначно одно из двух событий сработает?

wvxvw
13.12.2007, 03:16
да
123