Olaf: Alternative zu innerHTML?

Hallo zusammen,

wie sieht denn die DOM Alternative zu "document.body.innerHTML" aus?

Kann es sein, dass ich da z.B. jedes <strong>fetter text</strong> extra verwursten muss?

Das wäre ja der Horror

Vielleicht habt ihr eine einfachere Alternative.

Danke

Olaf

  1. Hi

    wie sieht denn die DOM Alternative zu "document.body.innerHTML" aus?

    innerHTML ist zwar nicht DOM, funktioniert aber trotzdem in allen wichtigen Browsern.

    Kann es sein, dass ich da z.B. jedes <strong>fetter text</strong> extra verwursten muss?

    Hä?

    Das wäre ja der Horror

    Ja, die DOM-Lösung ist soweit ich mich erinnere recht aufwendig...

    Tschau
      LanX

  2. Hallo Olaf.

    wie sieht denn die DOM Alternative zu "document.body.innerHTML" aus?

    Kann es sein, dass ich da z.B. jedes <strong>fetter text</strong> extra verwursten muss?

    Es kommt darauf an, was du vorhast.

    Einen schönen Samstag noch.

    Gruß, Ashura

    --
    sh:( fo:} ch:? rl:( br: n4:~ ie:{ mo:| va:) de:> zu:} fl:( ss:) ls:[ js:|
    mathbr:del.icio.us/ mathbr:w00t/
  3. Kann es sein, dass ich da z.B. jedes <strong>fetter text</strong> extra verwursten muss?

    Das wäre ja der Horror

    Ja, du musst alles per Hand 'verwursten' jeder Text, jeder Tag müssen erzeugt und als Child angehängt werden.
    Klar kannst du dazu ein paar Routinen schreiben, die einzelne Schritte zusammenfassen, aber insgesamt ist DOM nicht so simpel wie innerText, was letztlich eine HTML-Codierung interpretiert.

    Aber ein Horror ist das nicht, DOM kannst du vorallem dann sinnvoller als innerHTML verwenden, wenn die Dynamik der Website etwas komplexer wird.

    Gruß,
    Flash

  4. Hi,

    Vielleicht habt ihr eine einfachere Alternative.

    innerHTML. ;)

    Wird, im Gegensatz zu innerText, von jedem Browser unterstützt, der auch getElementById & Co.unterstützt - wohl aus genau dem Grund. ;)

    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"!
    1. Hi,

      Wird, im Gegensatz zu innerText, von jedem Browser unterstützt, der auch getElementById & Co.unterstützt - wohl aus genau dem Grund. ;)

      Gruß, Cybaer

      Wenn ich mich recht entsinne, plädiert Stefan Münz in seinenm Buch <professionelle Websites> auch für die Verwendung von innerHTML.
      Eben wegen der weitgehenden Unterstützung. Zwar sieht er auch die Bedenken, aber gegenüber der Alternativen sei innerHTML mit Sicherheit das kleinere Übel. So jedenfalls sinngemäß.

      Gruß
      Ulrich

      1. Hi,

        Eben wegen der weitgehenden Unterstützung. Zwar sieht er auch die Bedenken, aber gegenüber der Alternativen sei innerHTML mit Sicherheit das kleinere Übel. So jedenfalls sinngemäß.

        Anfangs habe ich noch "doppelt" gecodet: Ein Zweig mit innerHTML, einer mit DOM-Nodes als "sichere Alternative". Mittlerweile bin ich der Meinung, daß *falls* tatsächlich jemals ein Browserhersteller auf innerHTML verzichen sollte, ihm dies sofort als "schwerwiegender Bug" angekreidet würde. ;->

        Schon weil es soviele Browser unterstützen und so viele Programmierer verwenden.

        Und in Zeiten, wo sogar Mozilla begonnen hat, document.all zu unterstützen ... ;->

        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"!
  5. wie sieht denn die DOM Alternative zu "document.body.innerHTML" aus?

    Die Alternative ist, das du die Objekte des Dokumentes selbst erzeugst.

    Kann es sein, dass ich da z.B. jedes <strong>fetter text</strong> extra verwursten muss?

    Wenn du mit verwursten meinst, dass du für jedes Element einen eigenen Knoten erzeugen musst, ja.

    Das wäre ja der Horror

    Warum?

    Du könntest dir eine Funktion schreiben, die dann z.b. so aussieht:

    addElement(document.body, 'strong', 'fetter text');

    oder wenn du weißt, das der erste Parameter immer document.body ist

    addElement('strong', 'fetter text');

    oder wenn du das Element strong öfters einfügen willst

    addStrong('fetter text');

    Struppi.