DerDu: node -> dynamische Texte und Bilder

Hallo Leute ich habe ein (für mich großes) Problem..
mit dem node Objekt
ich hab es mittlerweile hingekriegt, dass ich einen mit

<SPAN ID="sowieso">Text1</SPAN>

definierten Text1 per Script mit

document.getElementById("sowieso").firstChild.nodeValue = ...

in einen anderen (zb Text2) ändern kann.

aber,

wenn in dem zweiten Text ein Bild <IMG ... > drinsteht, schreibt er anstatt das Bild anzuzeigen, nur den Code hin also..

Text1= "Zeile1"
Text2= "Zeilex <img src="dumdidum.jpg"> und weiterer Text"

Anzeige:
Vorher    : Zeile1
Nachher   : Zeilex <img src="dumdidum.jpg"> und weiterer Text
hätte gern: Zeilex [das angezeigte Bild] und weiterer Text

ich krieg das einfach nicht hin.. bitte helft mir BITTE! *heul*

  1. hi,

    document.getElementById("sowieso").firstChild.nodeValue = ...
    aber,
    wenn in dem zweiten Text ein Bild <IMG ... > drinsteht, schreibt er anstatt das Bild anzuzeigen, nur den Code hin also..

    na logisch, du hast ja einen _text_knoten genommen und dessen inhalt verändert - also wird das auch als text dargestellt.

    wenn du stattdessen ein bild einfügen möchtest, musst du dir dafür erst mal einen bildknoten _erzeugen_ - nur durch den _text_ "<img ...>" entsteht nämlich noch lange kein knoten, das ist und bleibt text.

    beschätfigte dich mit den DOM-methoden zum erzeugen neuer elemente, http://de.selfhtml.org/javascript/objekte/document.htm#create_element etc. (beispiele beachten.)

    gruß,
    wahsaga

    --
    "Look, that's why there's rules, understand? So that you _think_ before you break 'em."
    1. vorerst danke Leute :)

      *fängt an zu lesen*

      (bin noob im DOM)

      1. hm.. gibt es eine möglichkeit wie ich mir die aktuelle "Kindstruktur" eines Knotens anzeigen lassen kann? (Quelltext wär gut)

        1. hi,

          hm.. gibt es eine möglichkeit wie ich mir die aktuelle "Kindstruktur" eines Knotens anzeigen lassen kann?

          du kannst die "kinder" rekursiv durchlaufen, und dir dann nodeName, nodeType und nodeValue anschauen.

          (Quelltext wär gut)

          ja, und noch'n lutscher dazu wär' auch was feines.

          gruß,
          wahsaga

          --
          "Look, that's why there's rules, understand? So that you _think_ before you break 'em."
  2. Hi,

    wenn in dem zweiten Text ein Bild <IMG ... > drinsteht, schreibt er anstatt das Bild anzuzeigen, nur den Code hin

    html-elemente kannst Du mit Dom nicht einfach reinschreiben. Du musst Sie erzeugen und in den Dom-Baum reinhaengen. Beschaeftige Dich mit den Methoden createElement, setAttribute und appendChild

    ich krieg das einfach nicht hin.. bitte helft mir BITTE! *heul*

    lesen, nicht heulen ;-)

    Gruesse, Joachim

    --
    Am Ende wird alles gut.
  3. Hi,

    ich krieg das einfach nicht hin.. bitte helft mir BITTE! *heul*

    Und weil das vielen so geht, haben alle Browserhersteller innerHTML vom IE (natürlich mit W3C-DOM-Syntax) übernommen:

    getElementById("sowieso").innerHTML="<img> Text";

    Gruß, Cybaer

    --
    Hinweis an Fragesteller: Fremde haben ihre Freizeit geopfert, um Dir zu helfen. Helfe Du auch im Archiv Suchenden: Beende deinen Thread mit einem "Hat geholfen" oder "Hat nicht geholfen"!