Avatar billede bootlab Nybegynder
03. marts 2004 - 21:52 Der er 7 kommentarer og
1 løsning

XML output problem

Jeg har følgende xml som bliver hentet ind i flash:

  <?xml version="1.0" encoding="UTF-8" ?>
- <artikel>
  <tid dato="13." md="2" aar="2003" />
  <overskrift>Dykker humøret? Fisk gør dig glad</overskrift>
- <tekst>
  <b>Uoplagt, nedtrykt og trist til mode</b>
  <br />
  Måske burde du spise lidt mere fisk!
  <br />
  Et britisk videnskabeligt forsøg dokumenterer, at blot 1 gram fiskeolie om dagen får depressive mennesker til at se lysere på tilværelsen. 70 personer, som i forvejen blev behandlet med antidepressiv medicin, deltog i forsøget.
  <br />
  Fælles for dem alle var, at medicinen ikke havde hjulpet på deres depression - men da de fik fiskeolie, kom de i bedre humør, blev mindre triste og ængstelige, fik mere lyst til sex og gav slip på eventuelle selvmordstanker.
  <br />
  <br />
  Forskerne kan endnu ikke forklare, hvorfor fedtsyrerne fra fisk påvirker de depressive symptomer. Man ved blot, at der i membranen omkring hjernecellerne sidder rigtig mange af disse særlige fedtsyrer, som derfor formodes at have en vigtig funktion i hjernen.
  <br />
  <br />
  Kilde: Archives of General Psychiatry
  </tekst>
  <img1>glad_fisk.jpg</img1>
  <img2>factbox_fisk.jpg</img2>
  </artikel>

- - - - - - - - - - - - - - - - - - - - -

Jeg bruger flg. kode til at vise det i en swf:

var kif_art = new XML ();
xmlout.ignoreWhite = true;
xmlout.wordWrap = true;
xmlout.load ("xmltest.xml");
xmlout.onLoad = function (ok) {
    if (ok) {
        xml_r = xmlout.firstChild.childNodes[0].attributes
        datoformat = xml_r.dato + " " + md[xml_r.md] + " " + xml_r.aar;
        dato.text = aktiv_kat + ": " + datoformat;
        overskrift.htmlText = xmlout.firstChild.childNodes[1].firstChild;
        tekstboks.text = xmlout.firstChild.childNodes[2];
    }
};

Mit problem er at den ikke reagere på <b></b> eller andre alm. html tags, men det vil godt med <br /> !!!!

Er der nogle der har en løsning på det?
Avatar billede kragekjaer Praktikant
03. marts 2004 - 22:27 #1
du kan vist ikke bruge html-tags i xml
Avatar billede barklund Nybegynder
03. marts 2004 - 22:46 #2
Det er jo til visning i et HTML tekstfelt i flash - og det kan man godt...

Men problemet er nok, at du ikke har inkluderet en bold version af den font, du anvender. Du bør lave et offstage tekstfelt somewhere med din font i bold også...
Avatar billede bootlab Nybegynder
03. marts 2004 - 23:03 #3
Se det var jo lige det der skulle til :D

Barklund min helt ... du har gjort det igen..

Læg et svar
Avatar billede barklund Nybegynder
03. marts 2004 - 23:06 #4
No problem ;)

Normalt ville man dog ikke skrive sin HTML kode direkte i xml'en, der er jo ingen grund til, at det parses ind som xml noder alligevel. Her er brugen af CDATA-tags rekommanderet... :)

// Morten Barklund
Avatar billede bootlab Nybegynder
03. marts 2004 - 23:10 #5
CDATA-tags hmmm.. det må du meget gerne uddybe med et eksemple eller
iform af et godt link..
Eller skal jeg oprette et nyt spm. til den konto?
Avatar billede barklund Nybegynder
03. marts 2004 - 23:18 #6
Nænej, det er simpelt nok - XML:

<xml><!CDATA[her kan der stå alt! <b> også html tags]]></xml>

Og for dig:

<?xml version="1.0" encoding="UTF-8" ?>
<artikel>
  <tid dato="13." md="2" aar="2003" />
  <overskrift>Dykker humøret? Fisk gør dig glad</overskrift>
  <tekst><!CDATA[
  <b>Uoplagt, nedtrykt og trist til mode</b>
  <br />
  Måske burde du spise lidt mere fisk!
  <br />
  Et britisk videnskabeligt forsøg dokumenterer, at blot 1 gram fiskeolie om dagen får depressive mennesker til at se lysere på tilværelsen. 70 personer, som i forvejen blev behandlet med antidepressiv medicin, deltog i forsøget.
  <br />
  Fælles for dem alle var, at medicinen ikke havde hjulpet på deres depression - men da de fik fiskeolie, kom de i bedre humør, blev mindre triste og ængstelige, fik mere lyst til sex og gav slip på eventuelle selvmordstanker.
  <br />
  <br />
  Forskerne kan endnu ikke forklare, hvorfor fedtsyrerne fra fisk påvirker de depressive symptomer. Man ved blot, at der i membranen omkring hjernecellerne sidder rigtig mange af disse særlige fedtsyrer, som derfor formodes at have en vigtig funktion i hjernen.
  <br />
  <br />
  Kilde: Archives of General Psychiatry]]>
  </tekst>
  <img1>glad_fisk.jpg</img1>
  <img2>factbox_fisk.jpg</img2>
</artikel>

Og i flash:

xmlout.ignoreWhite = true;
xmlout.wordWrap = true;
xmlout.load ("xmltest.xml");
xmlout.onLoad = function (ok) {
    if (ok) {
        xml_r = xmlout.firstChild.childNodes[0].attributes
        datoformat = xml_r.dato + " " + md[xml_r.md] + " " + xml_r.aar;
        dato.text = aktiv_kat + ": " + datoformat;
        overskrift.htmlText = xmlout.firstChild.childNodes[1].firstChild;
        tekstboks.text = xmlout.firstChild.firstChild.nodeValue;
    }
};

Gætter jeg på - prøv dig frem - CDATA-tagget parses ind som var det et rent tekstchild...

Og tark for points ;)

// Morten Barklund
Avatar billede bootlab Nybegynder
03. marts 2004 - 23:33 #7
1000 tak Morten :)

Pointene har du fortjent.
Nu er mit næste mål at få lavet en editor i flash som kan sætte tags som
<b></b>, <i></i>, <u></u> og <li></li>

Der kommer du nok til at tjene et par 100 point der ;)

/Brio
Avatar billede barklund Nybegynder
03. marts 2004 - 23:36 #8
Det er nemt nok, når du har Selection objektet med dets getBeginIndex() og lignende procedurer. :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester