Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript (http://www.flasher.ru/forum/forumdisplay.php?f=5)
-   -   Возможно ли отменить загрузку? (Кто знает как реализованна загрузка файла в XML?) (http://www.flasher.ru/forum/showthread.php?t=41121)

fiza 21.12.2002 09:54

Возможно ли отменить загрузку? (Кто знает как реализованна загрузка файла в XML?)
 
предистория: :)
Сайт состоит из нескольких разделов реализованных в виде подгружаемых свф. Клиент захотел чтобы во время нахождения юзера на одном из разделов шла фоновая загрузка других.

Я реализовала загрузку с использованием возможностей XML(так как грузится без активации и есть событие onData).

Но когда юзер выбирает еще не загруженный раздел мне бы хотелось остановить загрузку того свф который грузится в моем прелоадере.

Так вот:

даже если я говорю delete тот самый XML обьект который грузит не нужный свф загрузка файла продолжается и даже срабатывает функция onData!? :eek:

если я его прошу загрузить empty.swf он меня просто игнорирует... :(

Кто знает как реализованна загрузка файла в XML?
просто очень хочется понять почему это работает так как работает и тогда может станет ясно можно ли все таки отменить загрузку?

fiza 24.12.2002 21:39

Ребята я от вас так просто не отстану :)

Ребята ну не может быть чтобы никто не знал почему у меня
не прекращается закрузка и срабатывает онДата удаленного обьекта.

XML не подходит для загрузки больших файлов?

они не предусмотрели что во время загрузки XML пользователь может передумать загружать одно и захотеть загрузить другое?

А может кто-то может поделиться умной мыслью как грамотно организовать такой фоновый прелоадер?
... может я просто чего то не догоняю...

john 24.12.2002 22:30

вообще нужно начать с того что грузит не флэш, а браузер,
чем бы не грузить хоть loadMovie() хоть XML.load()
поэтому все вопросы уже к к браузеру,

второй момент, хоть мы удаляем ссылку на объект - это не значит что удаляется сам объект (относится ко всем объктам, не только хмл)

во флэш нет принудительной деструкции объектов.... во всяком случае я таких не знаю, если нет ссылки или нет процесса который объект обслуживае, объект самоуничтажается автоматически,

по поводу идей, а если попробовать вызвать у объекта - загрузчика принудительно хендлер onData? Хотя вряд ли.

Нужно посмотреть код инициализации объектов, может что и накопаю.

fiza 25.12.2002 00:56

Спасибо джон :)
это хоть что-то обьясняет.

А удалить процесс который "обслуживает обьект" наверняка нельзя, да?

Наверное придется отказаться от идеи предзагрузки... :(

john 25.12.2002 16:59

Могу предложить загружать некую пустую SWF-шку в мувик или слой, в которой созданы механизмы загрузки через хмл,
если же нужно "убить" процесс загрузки большого файла, то убиваем (выгружаем-загружаем) этот swf, и тогда все объекты заведенные в этом swf будут удалены. (хотя это утверждение - под вопросом, вероятно и не будут, нужно проверить)

еще есть идея, узнать кто передает сюрс закачки у ХМЛ.onData через arguments.caller , скорее это просто функция, а не метод, и возмжно вызвать ее до загрузки, может это что и даст......

john 25.12.2002 17:16

забавно что у XML.onData arguments.caller равен null ... загадочно.... :)

хотя верно, скорее вызов происходит он низкоуровневой функции, ссылка на которую хранится в ASNative...
и ссылки на нее не должно быть, по логике...

да уж, ... интересный вопрос...

fiza 25.12.2002 21:10

Да проблема то собственно не в ненужном вызове функции онДата... его то пережить можно... поставить проверку да и дело с концом... Вопрос в том что загрузка продолжается и забивает канал по крайней мере в моем пятом эксплорере под видами 2000

:) :) :)

john 27.12.2002 16:32

Да я прекрасно понимаю что не в вызове дело,
а забивании канала...

пока решений нет, кроме создания отдельной swf-шки прелоадера,


Часовой пояс GMT +4, время: 10:35.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.