Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 29-01-2006, 18:52   #1 (permalink)
bitchboy
 
Registriert seit: Mar 2004
Ort: München
Beiträge: 126
Unhappy HTML in XML

hi,

ich lade xml daten in flash und gebe diese dann in einem textfeld wieder aus. funktioniert auch wunderbar. leider bringe ich es jetzt schon seit stunden nicht auf die reihe, einen simplen <br> tag in das textfeld unterzubringen

ich weiß, dass ich dafür CDATA nutzen muss, aber auch nach dem 100sten versuch klappt es einfach nicht kann mir vielleicht jemand von euch weiterhelfen? ich poste dazu mal mein funktionierendes script.

hier mein xml:
PHP-Code:
<?xml version='1.0'?>
<news>
<entry thema="Über" text="Dies ist ein Text. Zusätzlich hätte ich gerne einen Zeilenumbruch." duration="Dauer: 1 Tag" />
<entry thema="Recht" text="Punkt 2nochwas" />
<entry thema="Vertrieb" text="Punkt 3" />
</news>
hier mein as:
PHP-Code:
stop();
_global.varNewsItem 0;
newsScroller = new XML();
newsScroller.ignoreWhite true;
newsScroller.load("news.xml");
newsScroller.onLoad = function() {
    
items this.firstChild.childNodes;
    for (
a=0a<=items.length-1a++) {
        
news.dateSlider.attachMovie("button""item"+aa);
        
news.entrySlider.attachMovie("button2""item2"+aa);
        
news.dateSlider["item"+a].label.htmlText items[a].attributes.date;
        
news.entrySlider["item2"+a].label.htmlText items[a].attributes.text+"\n\n"+items[a].attributes.duration;
        
news.dateSlider["item"+a]._y 30*a;
        
news.dateSlider["item"+a].a;
        
news.dateSlider["item"+a].onPress = function() {
            
news.dateSlider.easeNews(003);
            
news.entrySlider.easeNews(0, -226*this.a-236*(this.a-1), 3);
            
_root.pos this.a;
        };
        
news.entrySlider["item2"+a]._y 461*a;
    }
}; 
ich hätte jetzt gern einen zeilenumbruch im ersten text vor "Zusätzlich...". Zugegebenermaßen bin ich in xml noch ein newbie...aber so schwer kann das doch eigentlich nicht sein?

ich bin für jede hilfe dankbar.
__________________
cheers,
alex
---
http://www.destinationdesign.de
Trumpfass ist offline   Mit Zitat antworten
Alt 29-01-2006, 19:01   #2 (permalink)
notzucht
 
Benutzerbild von shorty
 
Registriert seit: Nov 2003
Ort: Potsdam
Beiträge: 2.939
Falls deine Textfeldeigenschaften noch nicht auf htm = true stehen, sollte es so funktionieren
PHP-Code:
stop();
_global.varNewsItem 0;
newsScroller = new XML();
newsScroller.ignoreWhite true;
newsScroller.load("news.xml");
newsScroller.onLoad = function() {
    
items this.firstChild.childNodes;
    for (
0<= items.length 1a++) {
        
news.dateSlider.attachMovie("button""item" aa);
        
news.entrySlider.attachMovie("button2""item2" aa);
        
        
//  # property switch 
        
news.dateSlider["item" a].label.html true;
        
news.entrySlider["item2" a].label.html true;
        
        
news.dateSlider["item" a].label.htmlText items[a].attributes.date;
        
news.entrySlider["item2" a].label.htmlText items[a].attributes.text "\n\n" items[a].attributes.duration;
        
news.dateSlider["item" a]._y 30 a;
        
news.dateSlider["item" a].a;
        
news.dateSlider["item" a].onPress = function() {
            
news.dateSlider.easeNews(003);
            
news.entrySlider.easeNews(0, -226 this.236 * (this.1), 3);
            
_root.pos this.a;
        };
        
news.entrySlider["item2" a]._y 461 a;
    }
}; 
zeilenumbrüche schreibst du entweder direkt in die xml als html tag mit <br> oder innerhalb der funktion mit
  • \r (zeilenumbruch)
  • \n (zeilenumbruch)
  • \t (tabulator)
wobei es wesentlich einfacher ist, dass entsprechende html tag zu verwenden, als den string zu zerlegen, und an entsprechender stelle ein zeilenumbruch zu setzen ...

{btw} wie du schon richtig erkanntest, gehören html tags in der xml datei in einen CDATA bereich
__________________
.
Flex in a week | Viertel vor halb nach Vollmond | ^^°.°^^ | Waltz with Bashir
.

Geändert von shorty (29-01-2006 um 19:08 Uhr)
shorty ist offline   Mit Zitat antworten
Alt 29-01-2006, 21:30   #3 (permalink)
bitchboy
 
Registriert seit: Mar 2004
Ort: München
Beiträge: 126
hi,

danke
leider scheint mein xml dann noch nicht zu stimmen. so zumindest gibt er mir in flash gar nichts mehr aus:

PHP-Code:
<?xml version='1.0'?>
<news>
<![CDATA[entry thema="Über" text="Dies ist ein Text. Zusätzlich hätte ich gerne einen Zeilenumbruch." duration="Dauer: 1 Tag" ]]>
<entry thema="Recht" text="Punkt 2nochwas" />
<entry thema="Vertrieb" text="Punkt 3" />
</news>
ist das cdata falsch?
__________________
cheers,
alex
---
http://www.destinationdesign.de
Trumpfass ist offline   Mit Zitat antworten
Alt 29-01-2006, 22:21   #4 (permalink)
Techniker
 
Benutzerbild von hgseib
 
Registriert seit: Sep 2003
Ort: 64807
Beiträge: 16.322
<?xml version='1.0'?>
<news>
<tag><![CDATA[...tag inhalt...]]></tag>
...
</news>

ein tag zum inhalt sollte schon sein.
und den inhalt in flash unbedingt mit nodeValue auslesen, sonst wird das CDATA nicht interpretiert.
__________________
die ultimative antwort auf alle programmierfragen: der debugger
mfg h.g.seib www.SeibsProgrammLaden.de

Geändert von hgseib (29-01-2006 um 22:23 Uhr)
hgseib ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 18:09 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele