Autor | Zpráva | ||
---|---|---|---|
Mufna Profil |
#1 · Zasláno: 18. 8. 2008, 12:17:12
Zdravím Vás. DoubleThink mi už zde něco poradil, nicméně mám problém, jak načíst text+obrázky z XML souboru do Flashe. XML je:
<?xml version="1.0" encoding="utf-8"?> <galerie pauza="3" pozadi="0x000000" xpoz="50" ypoz ="50" vyska="125" sirka="100"> <obr> <file>pic1.jpg</file> <label>popisek</label> </obr> <obr> <file>pic2.jpg</file> <label>popisek</label> </obr> </galerie> Nebo <?xml version="1.0" encoding="utf-8"?> <galerie pauza="3" pozadi="0x000000" xpoz="50" ypoz ="50" vyska="125" sirka="100"> <obr file="pic1.jpg">popisek</obr> <obr file="pic2.jpg">popisek</obr> </galerie> a skript mám zatím (blbě) takto: data_xml = new XML(); data_xml.ignoreWhite = true; data_xml.load("banner_data.xml"); data_xml.onLoad = function() { node1 = data_xml.firstChild; node1Name = node1.nodeName; pauza = node1.attributes.pauza; // barvaPozadi = node1.attributes.pozadi; xpoz = new Number(node1.attributes.xpoz); ypoz = new Number(node1.attributes.ypoz); vyskaPict = new Number(node1.attributes.vyska); sirkaPict = new Number(node1.attributes.sirka); if (node1Name == "galerie") { nodArray = node1.childNodes; if (nodArray.length != 0) { x = 0; a = 0; img = new Array(); do { if (nodArray[x].nodeName.indexOf("obr") != -1) { img.push(nodArray[x].firstChild); } x++; } while (x<nodArray.length); } } play(); }; stop(); Poradíte mi ? Moc by mi to pomohlo. Předem díky. |
||
embee Profil |
#2 · Zasláno: 18. 8. 2008, 14:20:53
no jestli nekdo vycte neco z tehle zmeti, tak smekam :D
|
||
Mufna Profil |
#3 · Zasláno: 18. 8. 2008, 15:04:45
embee
Tak to XML je myslím úplně přehledný, a co se týče to skriptu, tak je to skript někde ze stránek flash.cz -jak vytvořit fotogalerii. Do tohoto skriptu se mi v pohodě načítají fotky, ale ne text. Kromě toho se ty fotky načítají pouze v případě, že XML neobsahuje "podelement" <item> a další. Tzn. pouze tehdy, pokud by XML bylo ve tvaru: <?xml version="1.0" encoding="utf-8"?> <galerie pauza="3" pozadi="0x000000" xpoz="50" ypoz ="50" vyska="125" sirka="100"> <obr>pic1.jpg</obr> <obr>pic2.jpg</obr> <obr>pic3.jpg</obr> </galerie> Já bych ale potřeboval vždy jednu fotku a jeden text seskupit dohromady a pak na to aplikovat fotogalerii. Na začátek by mi alespoň stačilo, kdyby mi někdo poradil, jak do skriptu dostat celý element <item>, který je pod elementem <galerie> tak, aby se jen zobrazila první fotka a první text. Tak řekněme, že ty záležitosti okolo samotné fotogalerie vynechám, takže skript by začínal takto: data_xml = new XML(); data_xml.ignoreWhite = true; data_xml.load("banner_data.xml"); data_xml.onLoad = function() { ale dál nevím. Zkus mi prosím nějak poradit. Za každou radu či odkaz díky ! |
||
DoubleThink Profil * |
#4 · Zasláno: 18. 8. 2008, 17:48:15 · Upravil/a: DoubleThink
Nastuduj si objekt XMLNode - hlavně jeho vlastnosti. Parsování XML je vcelku triviální záležitost.
xpoz = new Number(node1.attributes.xpoz); |
||
embee Profil |
#5 · Zasláno: 18. 8. 2008, 18:19:47
ja bych to spis resil pres XMLList nez pres XMLNode, jestli se tedy bavime o AS3 (nejsem si uplne jisty, v AS2 to bylo taky :) a tim padem valil v E4X.
viz adobe live docs: The XMLNode class represents the legacy XML object that was present in ActionScript 2.0 and that was renamed in ActionScript 3.0. In ActionScript 3.0, consider using the new top-level XML class and related classes instead, which support E4X (ECMAScript for XML). The XMLNode class is present for backward compatibility. |
||
DoubleThink Profil * |
#6 · Zasláno: 18. 8. 2008, 19:34:01
„jestli se tedy bavime o AS3“
Nebavíme. „XMLList (...) (nejsem si uplne jisty, v AS2 to bylo taky :)“ Nebylo. „a tim padem valil v E4X.“ Pochopitelně, v AS3 není důvod nevyužít nativní podporu objektového modelu XML, ale i postaru jde jen o jednoduché vypsání dětí cyklem. |
||
embee Profil |
#7 · Zasláno: 18. 8. 2008, 20:06:09
DoubleThink
„XMLList (...) (nejsem si uplne jisty, v AS2 to bylo taky :)“ myslel jsem XMLNode, ne XMLList, blbe jsem se vyjadril.... ja prave zacal resit XMLko az v AS3, tak jsem si nebyl jistej co to je. |
||
Mufna Profil |
#8 · Zasláno: 19. 8. 2008, 00:36:04 · Upravil/a: Mufna
DoubleThink
Nastuduj si objekt XMLNode - hlavně jeho vlastnosti. Parsování XML je vcelku triviální záležitost. No, jak pro koho :-( Už se v tom vrtám několik hodin, ale moc mi to nejde. Můžeš mi alespoň trochu poradit, jak z XML dokumentu vytáhnout zvlášť elementy <image> a <caption> ? (Omlouvám se, trochu jsem si to přejmenoval, abych byl zajímavej :-) Za radu díky. XML mám takto: <?xml version="1.0" encoding="utf-8"?> <galery pauza="3" bckgr="0x000000" xpoz="135" ypoz ="3" width="90" height="70"> <pic> <image>dolniroven03.jpg</image> <caption><![CDATA[ RD Horka Chrast ]]></caption> </pic> <pic> <image>chvojenec01.jpg</image> <caption><![CDATA[ RD Chrudim ]]></caption> </pic> <pic> <image>marsovice01.jpg</image> <caption><![CDATA[ Byt Polabiny ]]></caption> </pic> <pic> <image>mostiste10.jpg</image> <caption><![CDATA[ Byt Chrudim ]]></caption> </pic> </galery> EDIT: Á, tak myslím, že radši bych vytáhnul element <pic> |
||
Časová prodleva: 16 let
|
0