Форум 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)
-   -   Неполучается парсинг (http://www.flasher.ru/forum/showthread.php?t=145373)

Zip900 06.10.2010 01:34

Неполучается парсинг
 
Невыходит парсинг пишет в текстовом поле undefined
Событие фрейма

Код AS1/AS2:

list=new XML();
list.load("moscow.xml");
var cont:XMLNode = this.firstChild;
_root.tt.html=true;
_root.tt.htmlText=cont.childNodes[0].childNodes[1].childNodes[0].nodeValue;

Код XML файла


Код AS1/AS2:

<?xml version="1.0" encoding="utf-8" ?>
 
<words>
    <word> 
 
<Population>=<![CDATA[г. Москва население Большое]]></Population>
 
<Road>=<![CDATA[Дороги в москве кривые]]></Road>
 
<Measure>=<![CDATA[Мероприятия в Москве]]></Measure>
 
<Sport>=<![CDATA[Спорт в Москве]]></Sport>
 
<Pts>=<![CDATA[ПТС МОСКВЫ]]></Pts>
 
 
    </word>
 
</words>


Вот в текстовый документ один из пунктов XMLки надо загрузить меняется он childNodes[Индекс], индексом я так понимаю то что нам тебуется загруить. Вот все изрыл никак немогу исправить, в исходниках рылся. В XML структуре все вроде верно. Думаю грех в AS коде. Помоги плиз, то-ли я дураГ то-ли лыжи не едут.

Добавлено через 1 минуту
Напишите плиз код к парсингу этой XMLки, просто из текста мненадо теги цеплять такие как
PHP код:

<b> </b


alexcon314 06.10.2010 09:46

Код:

var my_xml:XML = new XML();
my_xml.ignoreWhite = true;
my_xml.onLoad = onXMLLoad;
my_xml.load("cdata.xml");
function onXMLLoad(s:Boolean) {
        var my_node:XMLNode = this.childNodes[0].childNodes[0].childNodes[0].childNodes[1];
        // текстовое поле out на сцене
        out.html = true;
        out.htmlText = my_node.nodeValue;
}

Файл cdata.xml (не забудьте сохранить в UTF-8):
Код:

<?xml version="1.0" encoding="utf-8" ?>
<words>
        <word>
                <Population>=<![CDATA[<b>г. Москва население Большое</b>]]></Population>
                <Road>=<![CDATA[Дороги в москве кривые]]>
                </Road>
                <Measure>=<![CDATA[Мероприятия в Москве]]>
                </Measure>
                <Sport>=<![CDATA[Спорт в Москве]]>
                </Sport>
                <Pts>=<![CDATA[ПТС МОСКВЫ]]>
                </Pts>
        </word>
</words>

Попробуйте так.

Zip900 06.10.2010 10:23

Огромаднейшее спасибо! Работает, хотел бы уточникть childNodes[0] - вот эта запись точнее их колличество влияет на колличество вложенностей в XML коде <word> - вот этой вложенности? и еще почему в последней childNodes[1] надо ставить 1 а меняется запись которую читаем в предпоследней?

Добавлено через 1 минуту
Оформлю исходник в архивчике пусть народ пользуется вдруг пригодится кому )

Добавлено через 5 минут
Еще хотел спросить что за my_xml.ignoreWhite = true; раньше без него оьбходился

Добавлено через 24 минуты
Блин следующая проблема!!!!!!!!!!!!!!!!! Текст который жирным он выпадает! Кодировку UTF-8 поставил, внедрил все шрифты, и шрифт менял, отображается только в режиме рендера шрифта : Использовать шрифт устройства. Ни сглаживание для читабельности , ни ручного сглаживания, ни сглаживания для анимации енти режимы рендера не позволяют отображать жирный текст, Может быть есть какоето решение?

Котяра 06.10.2010 10:55

нужно внедрить во флэшку шрифт с жирным.
поместите в невидимое место динамический текстфилд с жирным начертанием и внедрите нужные символы.

Zip900 06.10.2010 11:13

А в этом текстфилде надо перечислять все симыолы жирным?

mooncar 06.10.2010 11:24

В это поле писать ничего не обязательно, главное - внедрите все возможные наборы символов.
И вот еще что. Для того поля, в котором будет вывод укажите:
Код AS1/AS2:

myTextField.embedFonts = true ;

Ну и нужно будет внедрить также и нормальное начертание, еще одно поле с ним сделайте.

Zip900 06.10.2010 11:26

Усе разобрался спасибо огромное. Вроде теперь вопросов больше не должно возникнуть )

alexcon314 06.10.2010 11:43

Цитата:

Работает, хотел бы уточникть childNodes[0] - вот эта запись точнее их колличество влияет на колличество вложенностей в XML коде <word> - вот этой вложенности? и еще почему в последней childNodes[1] надо ставить 1 а меняется запись которую читаем в предпоследней?
trace() в руки:
Код:

var my_xml:XML = new XML();
my_xml.ignoreWhite = true;
my_xml.onLoad = onXMLLoad;
my_xml.load("cdata.xml");
function onXMLLoad(s:Boolean) {
        trace(this.childNodes[0]);
        trace(this.childNodes[0].childNodes[0]);
        trace(this.childNodes[0].childNodes[0].childNodes[0]);
        trace(this.childNodes[0].childNodes[0].childNodes[0].childNodes[0]);
        trace(this.childNodes[0].childNodes[0].childNodes[0].childNodes[1]);
        trace(this.childNodes[0].childNodes[0].childNodes[0].childNodes[1].nodeValue);
        var my_node:XMLNode = this.childNodes[0].childNodes[0].childNodes[0].childNodes[1];
        // текстовое поле out на сцене
        out.html = true;
        out.htmlText = my_node.nodeValue;
}

вместо childNodes[], можно использовать firstChild, nextSibling.


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

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