Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Динамическое генерирование xml (http://www.flasher.ru/forum/showthread.php?t=107889)

temych267 11.02.2008 20:38

Динамическое генерирование xml
 
У меня слайдшоу, уже здесь писал про это. так вот в слайдшоу около 100 фоток и их список генерируется автоматом на ASP. Т.е. ASP скрипт при обращении к ниму генерирует XML файл со списком картинок, а флеш берет этот XML и оттуда подгружает фотки в слайдшоу. Так вот столкнулся с такой проблемой - когда захожу первый раз на страничку с слайдшоу то у меня создалось впечатление что ASP еще не сгенерировал XML и из за этого все слайдшоу с эффектами просто обламывается, т.е. файлы начинают тормозить, твинэффекты вообзще пропададают и тд
Если же зайти езе раз и буквально 10-15 сек подождать то XML файл видимо успевает сгенерироватьс и все тогда ок - эффекты работают, картинки переключаются.
Вопрос как бороть эту проблему? Понятно что нужна наверное какая-то задержка на загрузку XML файла - но ума не приложу как это сделать.
Подскажите плиз.

iNils 11.02.2008 20:58

XML.onLoad

temych267 11.02.2008 21:20

Я использую onLoad но это для того чтобы считать xml нужно чтобы он был сгенерирован сначала. Т.е. проблема в том что flash начинает читать xml до того как он полностью сгенерировался - ну мне так кажется. мне просто нужна задержка до начала считывания файла, т.е. до onLoad.

iNils 11.02.2008 21:28

Данныйе поступают потоково. Между load и onLoad может пройти разное время. Но если сработал onLoad, до данные от сервера уже поступили и больше ничего не придет. Однако, у onLoad есть один аргумент, который принимает значение true - если загрузка прошла успешно или false - если нет. Это поможет вам разобраться, успешна ли была загрузка или нет.
Можете ещ дать сслыку на html с рабочим флешом.

temych267 11.02.2008 22:05

да я использую onLoad с проверкой загрузки, но видно это не помогает

Код:

slides_xml = new XML();
slides_xml.onLoad = startSlideShow;
slides_xml.load("slides450x600.asp");
slides_xml.ignoreWhite = true;

линк на swf в личке

iNils 11.02.2008 22:22

Посмотрел. При слайд шоу все нормально, если нажимать кнопки влево-вправо, то там ошибки в логике управления. С xml это не свзяано. Если не верите, сделаейт текстовое поле в флешке и выводите туда сообщения о загрузке xml, об его окончании и выведите содержимое, также начало твина фотографии. И увидите хронологию поступления данных и действии анимации.

temych267 11.02.2008 22:35

я тоже сначала о логике управления подумал. Но ведь второй раз если зайти и подождать буквально 10-20 сек то почему то все потом нормально идет... Я не то что бы верю или не верю, я пытаюсь найти истину )) Попробуйте второй раз зайти и просто чуть-чуть подождать.

iNils 11.02.2008 22:37

Второй раз картинки беруться из кеша.

temych267 11.02.2008 22:39

почему я подумал об XML так потому что - на локальной машинке все отрабатывает вообще без ошибок.
еще вопрос походу вспомнил. Вот если два раза подряд нажать кнопку Next (или Previous) то получается изза того что у меня всего 2 слоя кортинок - предыдущая и следующая - видно бекграунд.
Вопрос в задержке закгрузки след картинки пока предыдущая картинка не отработал свой тфинэффект. как реализовать это? как узнать что картинка доехала до конца и не загружать следующую картинку пока предыдущая не закончит свое движение/преобразование?

так вот и я о том - что картинки берутся из кеша, а значит никакой ошибки в логике управления нет. значит все таки ошибка в процессе загрузки картинок или файла XML - раз второй раз все отрабатывается нормально.

iNils 11.02.2008 23:09

Вы изначально говорили про XML, а не про картинки. Я вам сказал, что XML тут не причем.
А ошибка в логике управлении есть, если вы писали код не учитывая время на загрузку картинки, считая, что она грузится мгновенно. Это частая ошибка, являющаяся следствием разработки локально.


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

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