Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 1.0/2.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 09.12.2008, 14:28
allanon85 вне форума Посмотреть профиль Отправить личное сообщение для allanon85 Найти все сообщения от allanon85
  № 1  
Ответить с цитированием
allanon85

Регистрация: May 2008
Сообщений: 106
Отправить сообщение для allanon85 с помощью ICQ Отправить сообщение для allanon85 с помощью Skype™
По умолчанию загрузчик xml повторно не работает

помогите плз.

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

Код AS1/AS2:
var dannie:XML = new XML();
dannie.ignoreWhite = true;
 
dannie.load("xml/dannie.xml");
 
this.onEnterFrame=function() : Void {
 
if (this.getBytesLoaded()+dannie.getBytesLoaded()<this.getBytesTotal()+dannie.getBytesTotal()) {
     var percent:Number=Math.round(((this.getBytesLoaded()+dannie.getBytesLoaded())/(this.getBytesTotal()+dannie.getBytesTotal()))*100);
     pole.text=percent+" %";
     this.stop();
}
else if ((this.getBytesLoaded()+dannie.getBytesLoaded())==(this.getBytesTotal()+dannie.getBytesTotal())) {
     gotoAndPlay(2); delete this.onEnterFrame;
}
}

Старый 09.12.2008, 15:27
chingachgoog вне форума Посмотреть профиль Найти все сообщения от chingachgoog
  № 2  
Ответить с цитированием
chingachgoog
Banned
[+4 01.02.09]
[+1 01.02.09]
 
Аватар для chingachgoog

блогер
Регистрация: Nov 2006
Адрес: Moscow
Сообщений: 2,145
Записей в блоге: 7
А как вы поняли, что после обновления XML данных нет?

Старый 09.12.2008, 15:28
faust.d503 вне форума Посмотреть профиль Отправить личное сообщение для faust.d503 Найти все сообщения от faust.d503
  № 3  
Ответить с цитированием
faust.d503
 
Аватар для faust.d503

Регистрация: Nov 2008
Адрес: Москва
Сообщений: 52
использовать событие XML.onLoad для отлавливания момента загрузки.

Зачем xml прелоадер не очень ясно. Неужели такой большой и долго грузиться?

ЗЫ Русские имена переменных на транслите - плохой тон ИМХО.

Старый 09.12.2008, 15:59
allanon85 вне форума Посмотреть профиль Отправить личное сообщение для allanon85 Найти все сообщения от allanon85
  № 4  
Ответить с цитированием
allanon85

Регистрация: May 2008
Сообщений: 106
Отправить сообщение для allanon85 с помощью ICQ Отправить сообщение для allanon85 с помощью Skype™
Цитата:
Сообщение от chingachgoog Посмотреть сообщение
А как вы поняли, что после обновления XML данных нет?
на экране в поле должен занаситься текст взятый из хмл..а он не появляеца..

в общем я вроде разобрался...
это из за того что сама хмл весит мало, а основное время уходит, наверное, на поключение к этой хмл..так?

изменил код на вот такой:
Код AS1/AS2:
var dannie:XML = new XML();
dannie.ignoreWhite = true;
dannie.onLoad= function (success:Boolean) {
	if (success) {delete this.onEnterFrame;play();}
 
}
 
dannie.load("xml/dannie.xml");
 
this.onEnterFrame=function() : Void {
  var bytesLoaded:Number = dannie.getBytesLoaded();
  var bytesTotal:Number = dannie.getBytesTotal();
  var percent:Number = Math.round(((bytesLoaded+this.getBytesLoaded()) / (bytesTotal+this.getBytesTotal()) ) * 100);
  if (!isNaN(percent)){
  pole.text=percent+" %";}
  else {pole.text="Загрузка XML";}
  this.stop();
 
  if ((bytesLoaded+this.getBytesLoaded()) == (bytesTotal+this.getBytesTotal())){
  delete this.onEnterFrame; play();
}	
}
в итоге
при первой загрузке в начале появляеца надпись "загрузка хмл" а патом идет процент..

а при обнавлении не начинает работать пока не загрузится хмл..
но мне бы хотелось чтобы загрузка хмл отслеживалась в працентах..но не получается т.к. вот это выражение
Код AS1/AS2:
(bytesLoaded/bytesTotal)*100
выводится как "NaN"..
а как по-другому я незнаю(

Добавлено через 9 минут
кстати, при таком коде, флешка(без хмл) будет сохранятся на компах у людей?
а то у меня в фаирфоксе сохраняет, а в опере не сохраняет..и толи что то в браузерах нето, толи это из за кода...

Старый 09.12.2008, 16:25
nOobCrafter вне форума Посмотреть профиль Отправить личное сообщение для nOobCrafter Найти все сообщения от nOobCrafter
  № 5  
Ответить с цитированием
nOobCrafter

Регистрация: Nov 2008
Сообщений: 894
Записей в блоге: 1
А если так попробовать?
Код AS1/AS2:
bytesLoaded = Math.round(_root.getBytesLoaded());
bytesTotal = Math.round(_root.getBytesTotal());
percent = (bytesLoaded/bytesTotal)*100;
З.Ы. не знаю почему, но если у тебя
Код AS1/AS2:
{pole.text="Загрузка XML";}
заменить на
Код AS1/AS2:
{trace(123)}
то трейса нету(((


Последний раз редактировалось nOobCrafter; 09.12.2008 в 16:32.
Старый 09.12.2008, 16:35
allanon85 вне форума Посмотреть профиль Отправить личное сообщение для allanon85 Найти все сообщения от allanon85
  № 6  
Ответить с цитированием
allanon85

Регистрация: May 2008
Сообщений: 106
Отправить сообщение для allanon85 с помощью ICQ Отправить сообщение для allanon85 с помощью Skype™
nOobCrafter,
проверил щас с trace тоже работает.

Старый 09.12.2008, 18:25
Mnilionic вне форума Посмотреть профиль Отправить личное сообщение для Mnilionic Найти все сообщения от Mnilionic
  № 7  
Ответить с цитированием
Mnilionic
 
Аватар для Mnilionic

Регистрация: Aug 2005
Адрес: я из Ленинграда
Сообщений: 1,082
Отправить сообщение для Mnilionic с помощью ICQ
у мня работает замечательно. проценты бегают, всё загружается и отображается:
Код AS1/AS2:
stop();
var dannie:XML = new XML();
dannie.ignoreWhite = true;
dannie.load("xml/dannie.xml");
 
onEnterFrame = function(){
	var loaded = dannie.getBytesLoaded() + _root.getBytesLoaded();
	var total = dannie.getBytesTotal() + _root.getBytesTotal();
	var percent = Math.round( loaded / total * 100);
 
	if( !isNaN(percent) ) pole.text = 'загружено: ' + percent + '%';
	else pole.text = "Загрузка...";
 
 
	if ( loaded == total){
		delete onEnterFrame; 
		trace('Всё загруженно.');
		trace(dannie)
	}	
}

Старый 09.12.2008, 19:26
nOobCrafter вне форума Посмотреть профиль Отправить личное сообщение для nOobCrafter Найти все сообщения от nOobCrafter
  № 8  
Ответить с цитированием
nOobCrafter

Регистрация: Nov 2008
Сообщений: 894
Записей в блоге: 1
Да, вроде как пашет корректно, спс большое

Создать новую тему Ответ Часовой пояс GMT +4, время: 23:29.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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