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

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

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

Регистрация: Dec 2007
Сообщений: 102
Attention как подгрузить свку [i] кол-во раз

в главный свф (index.swf) подгружаеться XML (clan.xml)
Код:
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<clan>
   <pers>
       <nick>nick1</nick>
       <about>about1</about>
   </pers>
   <pers>
       <nick>nick2</nick>
       <about>about2</about>
   </pers>
   <pers>
       <nick>nick3</nick>
       <about>about3</about>
   </pers>
</clan>
так же есть другая флешка (info.swf) она должна подгрузиться в index.swf столько раз, сколько тегов <pers> в clan.xml в разные мувики.
собственно вопрос как подгрузить их?

пишу в index.swf :
Код:
function loadXML(loaded) {
if (loaded) {
xmlPers = this.firstChild;
nick = [];
about = [];
total = xmlPers.childNodes.length;
for (i=0; i<total; i++) {
nick[i] = xmlPers.childNodes[i].childNodes[0].firstChild.nodeValue;
about[i] = xmlPers.childNodes[i].childNodes[1].firstChild.nodeValue;
}
}
}
xmlData = new XML();
xmlData.ignoreWhite = true;
xmlData.onLoad = loadXML;
xmlData.load("clan.xml");
смотрю скока всего тегов <pers>, вытаскиваю значения с присвоением [i]


Дальше не могу понять что делать... не подскажите?

Старый 23.08.2008, 09:08
MrPoma вне форума Посмотреть профиль Отправить личное сообщение для MrPoma Посетить домашнюю страницу MrPoma Найти все сообщения от MrPoma
  № 2  
Ответить с цитированием
MrPoma
 
Аватар для MrPoma

Регистрация: Jul 2006
Адрес: Питер
Сообщений: 2,083
Отправить сообщение для MrPoma с помощью Skype™
Создайте мувик-контейнер и с помощью MoviClipLoader'а грузите в него info.swf сколько угодно раз.
__________________
жж | твттр | гглплс | фсбк | вкнткт | гтхб

Старый 23.08.2008, 10:26
Wolsh вне форума Посмотреть профиль Отправить личное сообщение для Wolsh Найти все сообщения от Wolsh
  № 3  
Ответить с цитированием
Wolsh
Нуб нубам
 
Аватар для Wolsh

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
У Вас же есть уже цикл, в котором Вы читаете XML. Ну и загружайте новую свфку при каждой итерации по персу. (Хотя, имхо, я бы лучше аттачил с либы. Или допускается ситуация отсутствия персов?))))
__________________
Reality.getBounds(this);

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

Регистрация: Dec 2007
Сообщений: 102
ээээ... так не работает...что не так?
Код:
function loadXML(loaded) {
if (loaded) {
xmlPers = this.firstChild;
nick = [];
about = [];
total = xmlPers.childNodes.length;
for (i=0; i<total; i++) {
nick[i] = xmlPers.childNodes[i].childNodes[0].firstChild.nodeValue;
about[i] = xmlPers.childNodes[i].childNodes[1].firstChild.nodeValue;
createEmptyMovieClip("container"+[i], getNextHighestDepth());
container[i].loadMovie("info.swf")
};
};
};
xmlData = new XML();
xmlData.ignoreWhite = true;
xmlData.onLoad = loadXML;
xmlData.load("clan.xml");


Последний раз редактировалось CROL; 23.08.2008 в 18:27.
Старый 23.08.2008, 18:29
Obi вне форума Посмотреть профиль Отправить личное сообщение для Obi Найти все сообщения от Obi
  № 5  
Ответить с цитированием
Obi
 
Аватар для Obi

Регистрация: Nov 2007
Адрес: Moscow
Сообщений: 566
Код:
function loadXML(loaded) {
if (loaded) {
xmlPers = this.firstChild;
nick = [];
about = [];
total = xmlPers.childNodes.length;
for (i=0; i<total; i++) {
nick[i] = xmlPers.childNodes[i].childNodes[0].firstChild.nodeValue;
about[i] = xmlPers.childNodes[i].childNodes[1].firstChild.nodeValue;
createEmptyMovieClip("container"+[i], getNextHighestDepth());
container[i].loadMovie("info.swf")
};
};
};
xmlData = new XML();
xmlData.ignoreWhite = true;
xmlData.onLoad = loadXML;
xmlData.load("clan.xml");

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

Регистрация: Dec 2007
Сообщений: 102
obi, так тоже не подгружает =(...пробовал так...но тоже не работает
Код:
function loadXML(loaded) {
if (loaded) {
xmlPers = this.firstChild;
nick = [];
about = [];
total = xmlPers.childNodes.length;
for (i=0; i<total; i++) {
nick[i] = xmlPers.childNodes[i].childNodes[0].firstChild.nodeValue;
about[i] = xmlPers.childNodes[i].childNodes[1].firstChild.nodeValue;
createEmptyMovieClip("container"+[i], getNextHighestDepth());
var infoLoader:MovieClipLoader = new MovieClipLoader();
infoLoader.loadClip("info.swf", container[i]);
};
};
};
xmlData = new XML();
xmlData.ignoreWhite = true;
xmlData.onLoad = loadXML;
xmlData.load("clan.xml");

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

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
Что еще за container[i] ?
Код:
function loadXML(loaded) {
if (loaded) {
xmlPers = this.firstChild;
nick = [];
about = [];
total = xmlPers.childNodes.length;
for (i=0; i<total; i++) {
nick[i] = xmlPers.childNodes[i].childNodes[0].firstChild.nodeValue;
about[i] = xmlPers.childNodes[i].childNodes[1].firstChild.nodeValue;
var clip:MovieClip = createEmptyMovieClip("container"+[i], getNextHighestDepth());
clip.loadMovie("info.swf")
};
};
};
xmlData = new XML();
xmlData.ignoreWhite = true;
xmlData.onLoad = loadXML;
xmlData.load("clan.xml");
__________________
Reality.getBounds(this);

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

Регистрация: Dec 2007
Сообщений: 102
Спасибо большое 8)

Старый 23.08.2008, 19:41
CROL вне форума Посмотреть профиль Отправить личное сообщение для CROL Найти все сообщения от CROL
  № 9  
Ответить с цитированием
CROL
 
Аватар для CROL

Регистрация: Dec 2007
Сообщений: 102
и как теперь отправить значение nick[i] в container[i]?

Старый 23.08.2008, 22:03
Wolsh вне форума Посмотреть профиль Отправить личное сообщение для Wolsh Найти все сообщения от Wolsh
  № 10  
Ответить с цитированием
Wolsh
Нуб нубам
 
Аватар для Wolsh

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
Элементарно)))) Надо просто грузить не в сам clip, а создавать в нем пустой мувиклип и загружать свф в него, а данные хранить в контейнере (clip, "container"+i). Просто после загрузки внешней свф в клип тот теряет "неродные" свойства. А контейнер их запомнит, потому что в него не будет загружаться ничего, он не поменяется))
Ну примерно так:
Код:
function loadXML(loaded) {
    if (loaded) {
        xmlPers = this.firstChild;
        nick = [];
        about = [];
        total = xmlPers.childNodes.length;
        for (i=0; i<total; i++) {
            nick[i] = xmlPers.childNodes[i].childNodes[0].firstChild.nodeValue;
            about[i] = xmlPers.childNodes[i].childNodes[1].firstChild.nodeValue;
            var clip:MovieClip = createEmptyMovieClip("container"+[i], getNextHighestDepth());
            var informer:MovieClip = clip.createEmptyMovieClip("informer", 1);
            clip.id = i;
            informer.loadMovie("info.swf")
        };
    };
};
xmlData = new XML();
xmlData.ignoreWhite = true;
xmlData.onLoad = loadXML;
xmlData.load("clan.xml");
////
trace("клип: "+container3+"\nNick: "+nick[container3.id]+"\nabout: "+about[container3.id])
Ну только трейс надо после загрузки делать))) loadMovie уже сто лет не используют, загрузку не отловить.
Ну и, конечно, Вы можете хранить ник и описание не в массиве, а в свойствах самого контейнера, если нужно, также как id))
__________________
Reality.getBounds(this);


Последний раз редактировалось Wolsh; 23.08.2008 в 22:11.
Создать новую тему Ответ Часовой пояс GMT +4, время: 19:50.
Быстрый переход
  « Предыдущая тема | Следующая тема »  
Опции темы
Опции просмотра

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

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


 


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


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