PDA

Просмотр полной версии : Xml непонятная весчь


Rescuer_77
29.08.2005, 17:25
Есть swf с прелоадером. Ловим отгрузку XML по флагам и по обработчику onload. На всех стадиях проверка проходит. т.е. getBytesLoaded/BytesTotal=1 и флаг loaded=true.
Но! В итоге XML не подгрузился! Обновляю страницу - все работает.
(локально проблем нет только загрузка с сервера).
Т.е. грубо говоря грузится XML куда-то в кеш видимо. Я даже использую в XML специальный тэг с единичкой, для проверки загрузки XML.
Почему не подгружает XML с первого раза? И главное,
что делать при обработке события onData=undefined? заново XML.load()?
Если просто ожидать подгрузки XML то висюки...
Помогите плиз...

Nео
29.08.2005, 17:59
скорее всего просто скипт не дожидается загрузки XML. Почему не работает onLoad не знаю. Без исходника ничего наверняка сказать нельзя.

Iv
29.08.2005, 18:07
попробуй эту конструкцию (onData не задавай), скажи чаво ругнет:

my_xml = new XML()
my_xml.load("your.xml")
my_xml.onLoad = function(ok) {
if (this.status or !ok) {
return trace('loaded: '+ok+' valid: '+!this.status);
}
trace(this);
};

Rescuer_77
29.08.2005, 18:45
Дело в том, что на локале все работает.
Только стоит занести это все на сервак, так глюк.
Вроде все загрузилось, а данных из XML - нет.
Вернее со 2 раза все подгружается.
Запускать html. Или из первого кадра забанить переменную file_name

Iv
30.08.2005, 03:53
- можно я использую твой скрипт для обучения начинающих?
просто я сам пытался написать такой - не получается.
а тут всё что надо налицо.

Rescuer_77
30.08.2005, 12:40
да используй. только это наверное плохой пример будет... работает-то коряво...

Nео
30.08.2005, 12:44
проверял на серваке... у тебя сначала проигрывается кадр 11, а потом наступает событие onLoad со всеми вытекающими отсюда последствиями... Вывод: переходить на кадр 11 по событию onLoad либо написать например все в одном кадре в виде функций, а потом вызывать их в обработчиках событий.

Nео
30.08.2005, 13:09
попробуй это... правда корявенько, на скорую руку, но принцип должен быть понятен...
зы. я там прелоадер внешний сделал, чтоб заморочек меньше было, тока он под 7-й флэш, так что если не подходит, переделай под 6-й...

Iv
30.08.2005, 13:19
да используй.- пасиба. только это наверное плохой пример будет... работает-то коряво...- дык. я его именно в этом качестве и собираюсь показывать.
да и работать не должно. если обзывать переменные
"x", "xxx" и т.п., то никакой мозг не сможет заставить
работать этот скрипт.

Rescuer_77
30.08.2005, 13:21
2Neo!
Спасибо! Ты дал мне действительно нужный совет! Повесил переход на 11 кадр в событии onLoad ! Читал ведь я-дурень книгу. Там именно так все и делали. Так нет, блин все функции надо было самому переписать. А про onLoad только после этих качелей понял! Спасиб еще раз!
ЗЫ. К сожалению не могу посмотреть даже твой пример у меня MX. :(

Rescuer_77
30.08.2005, 13:32
- пасиба.- дык. я его именно в этом качестве и собираюсь показывать.
да и работать не должно. если обзывать переменные
"x", "xxx" и т.п., то никакой мозг не сможет заставить
работать этот скрипт.
Сорри, забыл переименовать... :rolleyes:

Iv
30.08.2005, 13:45
типа золотое руло.
у нас в компании такие правила.
помогают до ужаса %)

- а если серьезно: я скачал твой скрипт, посмотрел,
даже не стал искать причину, потому, что причина очевидна:
для начала нужно навести элементарный порядок.
когда в скрипте всё ляжет логично и по полкам,
когда скрипт начнешь читать как обычный текст,
тут же станут видны острые углы.

- сорри за старческое брюзжание.

Rescuer_77
30.08.2005, 14:02
Спасиба за рулезы. А разве после 6 версии плеер понимает больше чем 30 fps? Да давненько я не брал в руки шашек...