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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 11.12.2005, 22:44
amphetamine вне форума Посмотреть профиль Отправить личное сообщение для amphetamine Найти все сообщения от amphetamine
  № 1  
Ответить с цитированием
amphetamine
[+1 13.10.2006]
[+1 13.10.06]
 
Аватар для amphetamine

Регистрация: Sep 2005
Сообщений: 88
По умолчанию childNodes.length troubles

Код:
xm = new XML();
...
xm.load("menu1.xml");
...
am[i].xx = new XML (xm.firstChild.childNodes[i].childNodes);
...
далее есть поцедурка
Код:
RollOver = function (n) {
	with (n) {
		trace(xx.childNodes.length);
         };
};
xx.childNodes.length показывает неверное число нод
если сделать trace каждой ноде то будет видно, что через одну идут ноды содержащие просто "," хотя в исходной xml такого нету

в чем моя проблема ?
заранее спасибо

Старый 11.12.2005, 23:42
Antares вне форума Посмотреть профиль Найти все сообщения от Antares
  № 2  
Ответить с цитированием
Antares
Banned
[+1 16.05.2006]
[++1 16.05.2006]
[+ 1 21.05.06]
[++ за хамство]
[+1 21.05.2006]
 
Аватар для Antares

Регистрация: Dec 2003
Сообщений: 3,925
ignoreWhite = true

Старый 12.12.2005, 01:35
amphetamine вне форума Посмотреть профиль Отправить личное сообщение для amphetamine Найти все сообщения от amphetamine
  № 3  
Ответить с цитированием
amphetamine
[+1 13.10.2006]
[+1 13.10.06]
 
Аватар для amphetamine

Регистрация: Sep 2005
Сообщений: 88
Цитата:
Сообщение от Antares
ignoreWhite = true
cтоит true, как ни странно
прилепил исходник + xml файл если я непонятно изложил суть проблемы
Вложения
Тип файла: rar menu.rar (8.2 Кб, 62 просмотров)

Старый 12.12.2005, 01:50
Antares вне форума Посмотреть профиль Найти все сообщения от Antares
  № 4  
Ответить с цитированием
Antares
Banned
[+1 16.05.2006]
[++1 16.05.2006]
[+ 1 21.05.06]
[++ за хамство]
[+1 21.05.2006]
 
Аватар для Antares

Регистрация: Dec 2003
Сообщений: 3,925
))))))))))))))))))))))))))))
Ты массив выводишь))))))))))))))))))))

Старый 12.12.2005, 01:56
Antares вне форума Посмотреть профиль Найти все сообщения от Antares
  № 5  
Ответить с цитированием
Antares
Banned
[+1 16.05.2006]
[++1 16.05.2006]
[+ 1 21.05.06]
[++ за хамство]
[+1 21.05.2006]
 
Аватар для Antares

Регистрация: Dec 2003
Сообщений: 3,925
Код:
loadXML = function(xmlName) {
	xm.load("menu1.xml");
	xm.ignoreWhite = true;
	xm.onLoad = function (loaded) {
		if (loaded) {
			for (i=0; i <= xm.firstChild.childNodes.length-1; i++) {
				am[i] = _root.me.attachMovie("item","it"+i,getNextHighestDepth(),{_x:0, _y:mainbut._height + i*20, sel:_sel,xx:asd});
				am[i].title.text = xm.firstChild.childNodes[i].attributes.name;
				am[i].xx = new XML (xm.firstChild.childNodes[i].childNodes);
				am[i].xx.ignoreWhite = true;
				if (am[i].xx.hasChildNodes() == false) {am[i].arr._visible = false;};
			};
		};
	};
};
Что неверно -- обработчик надо определять ДО загрузки. ДО, а не после!!

Про класс XML и XMLNode читать в обязательном порядке. Убрать нахрен точки с запятой после закрывающих фигурных скобок.

Старый 12.12.2005, 19:21
amphetamine вне форума Посмотреть профиль Отправить личное сообщение для amphetamine Найти все сообщения от amphetamine
  № 6  
Ответить с цитированием
amphetamine
[+1 13.10.2006]
[+1 13.10.06]
 
Аватар для amphetamine

Регистрация: Sep 2005
Сообщений: 88
из объяснений и чтения хелпа, я так и не понял, почему у меня неправильно оперделяется длина массива(дочених нод), если тебе не трудно прокомментируй пожалуйста по подробнее в чем состоит моя ошибка..
читал про классы, точки с запятой теперь не ставлю=)

Старый 12.12.2005, 19:35
amphetamine вне форума Посмотреть профиль Отправить личное сообщение для amphetamine Найти все сообщения от amphetamine
  № 7  
Ответить с цитированием
amphetamine
[+1 13.10.2006]
[+1 13.10.06]
 
Аватар для amphetamine

Регистрация: Sep 2005
Сообщений: 88
По умолчанию пояснения

если посмотреть в debug/list variables
то при передаче хмл
Код:
Variable _level0.me.xm = [object #1] {
    
      <m>
        <k0 name="2New Project">
          <k1 name="Shop">
            <k2 name="shop1" link="" />
            <k2 name="shop2" link="" />
            <k2 name="shop3" link="" />
            <k2 name="shop4">
              <k3 name="a" link="" />
              <k3 name="b" link="" />
              <k3 name="c" link="" />
            </k2>
          </k1>
          <k1 name="Prtfolio">
            <k2 name="p1" link="" />
            <k2 name="p2" link="" />
          </k1>
          <k1 name="HomePage">
            <k2 name="HP1" link="" />
            <k2 name="HP2" link="" />
          </k1>
        </k0>
        <k0 name="Save Project" link="" />
        <k0 name="Load saved Project" link="" />
        <k0 name="About" link="" />
      </m>
  }
при передаче части хмл-ки появляются запятые
Код:
Variable _level0.me.it0.xx = [object #7] {
    
      <k1 name="Shop">
        <k2 name="shop1" link="" />
        <k2 name="shop2" link="" />
        <k2 name="shop3" link="" />
        <k2 name="shop4">
          <k3 name="a" link="" />
          <k3 name="b" link="" />
          <k3 name="c" link="" />
        </k2>
      </k1>
      ,
      <k1 name="Prtfolio">
        <k2 name="p1" link="" />
        <k2 name="p2" link="" />
      </k1>
      ,
      <k1 name="HomePage">
        <k2 name="HP1" link="" />
        <k2 name="HP2" link="" />
      </k1>
  }
и неправильно определяется childNode.length
вопрос в том, что я неправильно делаю...
исходник прилагается
Вложения
Тип файла: rar source.rar (6.5 Кб, 53 просмотров)

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

Регистрация: Mar 2004
Адрес: Областной центр "sump"
Сообщений: 202
Отправить сообщение для s_u_m_p с помощью ICQ
Цитата:
Сообщение от Antares
Что неверно -- обработчик надо определять ДО загрузки. ДО, а не после!!
Честно говоря во флэше глубоко пофигу где писать обработчик (до команды лоад или строкой после, главное в том же блоке), так как он полюбому запуститься только после того как очиститься стэк функций.
__________________
:::::::::::: sump ::::::::::::

Старый 12.12.2005, 20:50
Antares вне форума Посмотреть профиль Найти все сообщения от Antares
  № 9  
Ответить с цитированием
Antares
Banned
[+1 16.05.2006]
[++1 16.05.2006]
[+ 1 21.05.06]
[++ за хамство]
[+1 21.05.2006]
 
Аватар для Antares

Регистрация: Dec 2003
Сообщений: 3,925
Цитата:
Сообщение от s_u_m_p
Честно говоря во флэше глубоко пофигу где писать обработчик (до команды лоад или строкой после, главное в том же блоке), так как он полюбому запуститься только после того как очиститься стэк функций.
Аха. Вот такие вот начитанные миллиард раз задавали вопросы "почему у меня лишние undefined вылазят при загрузке", а также "почему звук после загрузки не проигрывается".

Старый 12.12.2005, 21:09
s_u_m_p вне форума Посмотреть профиль Отправить личное сообщение для s_u_m_p Посетить домашнюю страницу s_u_m_p Найти все сообщения от s_u_m_p
  № 10  
Ответить с цитированием
s_u_m_p

Регистрация: Mar 2004
Адрес: Областной центр "sump"
Сообщений: 202
Отправить сообщение для s_u_m_p с помощью ICQ
Цитата:
Сообщение от Antares
Аха. Вот такие вот начитанные миллиард раз задавали вопросы "почему у меня лишние undefined вылазят при загрузке", а также "почему звук после загрузки не проигрывается".
Тогда поясню менее начитанным:

* Загрузка во флэш асинхронная?
* Сколько исполняющихся потоков кода?
* Что из себя фактически представляет скрипт написанный в кадре?

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

то бишь, если так написать, будет работать всегда
var lv:LoadVars = new LoadVars ();
lv.load ('text.txt');
lv.onLoad = function () {}

З.Ы. кстати по той же причине сетИнтервал работает не так точно как хотелось бы
__________________
:::::::::::: sump ::::::::::::


Последний раз редактировалось s_u_m_p; 13.12.2005 в 00:10.
Создать новую тему Ответ Часовой пояс GMT +4, время: 20:31.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

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

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


 


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


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