Irene: Inhalt einer division dynamisch ändern

Hallo!

Ich muss eine bestehende Homepage fertigmachen. Sie besteht auch divisions die aus- und eingeblendet werden können und ihren Ihnalt dynamisch ändern.
Bei der ersten habe ich den Inhalt mit 'innerHTML' neu geschrieben. Das funktioniert zwar, ist aber bei langen Texten sehr unübersichtlich und schwer zu warten.
Jetzt ist meine Frage, ob ich die Inhalte in Textdateien speichern und dann quasi dynamisch einfügen kann ('<link...')?
Da ich vorher nicht weiss, was der Benutzer wählt, kann ich das nicht mit php lösen sondern muss auf javascript zurückgreifen.

ich würde mich über Hinweise freuen

Irene

  1. Hallo!

    Ich muss eine bestehende Homepage fertigmachen.

    Wie verstehe ich das? Sie besteht schon, ist aber noch nicht fertig?
    Kann eine Website überhaupt jemals fertig sein? ;-)

    Sie besteht aus divisions

    Nur um keine Missverständnisse aufkommen zu lassen: Mit divisions meinst du DIV Elemente, oder?

    die aus- und eingeblendet werden können und ihren Ihnalt dynamisch ändern.

    Per Javascript, oder wie ist das aktuell realisiert?

    Bei der ersten habe ich den Inhalt mit 'innerHTML' neu geschrieben. Das funktioniert zwar, ist aber bei langen Texten sehr unübersichtlich und schwer zu warten.

    Und vorallem funktioniert es nicht, wenn jemand kein JS hat, bzw. es deaktiviert hat.

    Jetzt ist meine Frage, ob ich die Inhalte in Textdateien speichern und dann quasi dynamisch einfügen kann ?

    Ja, du kannst deine Inhalte prinzipiell speichern wo (fast) immer du lustig bist - bspw. in einer DB, einem Textfile u.v.a.m.!
    Nur solltest du dazu unbedingt serverseitige Techniken nutzen, wie SSI oder PHP.

    ('<link...')?

    Damit nicht - siehe: http://de.selfhtml.org/html/kopfdaten/beziehungen.htm

    Da ich vorher nicht weiss, was der Benutzer wählt, kann ich das nicht mit php lösen sondern muss auf javascript zurückgreifen.

    Das halte ich für ein Gerücht (s.o.). ;-)

    Also mir scheint es so, als ob die besagte Website momentan so aufgebaut ist, dass es quasi nur eine Seite gibt, auf der sämtliche Inhalte auf einmal geladen werden, und dann irgendwie per JS versteckt, bzw. zur Anzeige gebracht werden.

    Das ist keine "vernünftige/ brauchbare" Struktur. Informiere dich, falls ich richtig liege, bitte im Web darüber, wie man generell Websites strukturiert und wie klassischerweise heutzutage dynamische Webseiten aufgebaut sind.

    Gruß Gunther

    1. Hallo Gunther!

      Danke gleich einmal für die ausführlichen Antworten.
      Die Website ist von einer Grafikerin gestaltet, aber nicht umgesetzt worden, das soll jetzt ich machen. Ich hätte nicht so viele verschachtelte Divisions (div) gemacht, daher kommen jetzt auch meine Probleme.
      Ich habe bis jetzt angenommen, dass ich mit php nur am Server Dateien auslesen kann. Das wird mir in diesem Fall nicht viel nutzen.

      Wenn es nicht anders geht, muss ich die Seite umgestalten.

      Liebe Grüße

      Irene

      1. Die Website ist von einer Grafikerin gestaltet, aber nicht umgesetzt worden, das soll jetzt ich machen. Ich hätte nicht so viele verschachtelte Divisions (div) gemacht, daher kommen jetzt auch meine Probleme.

        Die Webseiten die ich tagtäglich umsetze werden auch von Grafikern gemacht - "verschachtelt" ist da aber selten was - das mag primär damit zu tun haben, dass die logische Reihenfolge (und verschachtelung) der Inhalte nicht dem Design entspricht.

        Kann es sein, dass du ein Tabellenlayout (oder Tabellendenken) 1:1 in eine div-Suppe konvertiert hast?

        1. Eine Tabelle ersetze ich normalerweise nicht mit einem div, aber ich mache nur gelegentlich Websites und mir fehtl sicher die Erfahrung.

        2. Ich ersetze Tabellen normalerweise nicht mit divs, aber ich mache nur gelegentlich Websites und mir fehlt da sich Erfahrung.

      2. Hallo Irene!

        Die Website ist von einer Grafikerin gestaltet,

        die vermutlich aus dem Print-Bereich kommt und nur begrenzt Ahnung von Webdesign hat.

        aber nicht umgesetzt worden, das soll jetzt ich machen.

        FF - Viel Vergnügen! ;-)

        Ich hätte nicht so viele verschachtelte Divisions (div) gemacht, daher kommen jetzt auch meine Probleme.

        "Divitis" ist zwar "nicht schön/ sinnvoll", aber von Hause aus auch nicht zwingend ein Problem.

        Ich habe bis jetzt angenommen, dass ich mit php nur am Server Dateien auslesen kann.

        Auch, aber nicht nur.

        Das wird mir in diesem Fall nicht viel nutzen.

        Mit Sicherheit aber mehr, als ausschließlich und zwingend auf eine clientseitige Technik wie Javascript zu setzen.

        Wenn es nicht anders geht, muss ich die Seite umgestalten.

        Mir scheint, hier liegt immer noch ein grundsätzliches Verständnisproblem vor. Deine Website (= alle Webseiten, die zu einem Internetauftritt gehören) besteht doch nicht nur aus_einer_Webseite, oder?

        Also anstatt alle Inhalte in eine einzige Seite zu stopfen und diese dann per JS aus-, bzw. einzublenden, kannst du

        • mehrere statische HTML Seiten erstellen, die über Links (A Elemente) miteinander verknüpft werden,
          oder
        • die einzelnen Seiten dynamisch (bspw. per PHP) auf dem Server "erstellen" und ausliefern.

        Falls ich mit meiner Einschätzung deines Vorhabens falsch liege, schildere es bitte noch einmal etwas ausführlicher/ genauer - danke!

        Gruß Gunther

        1. Ich denke ich zeige dir einfach den ersten Entwurf, die Anordnung der Menüpunkte funktioniert aber erst im IE 6 und Mozilla, also bitte verschobene Wörter ignorieren:

          http://user.meduni-graz.at/irene.mischak/Pertl/main.htm

          Liebe Grüße

          Irene

          1. Ich denke ich zeige dir einfach den ersten Entwurf, die Anordnung der Menüpunkte funktioniert aber erst im IE 6 und Mozilla, also bitte verschobene Wörter ignorieren:

            &nbsp; ist nicht zum Formatieren geeignet - warum nutzt du für dein Menü keine unsortiere Liste und formatierst diese mit CSS? Damit sparst du dir eine Menge Arbeit.

            Ebenso ist eine reine JavaScript-Navigation aus mehrerlei Gründen etwas unpraktisch.

          2. Hallo Irene!

            Ich denke ich zeige dir einfach den ersten Entwurf, die Anordnung der Menüpunkte funktioniert aber erst im IE 6 und Mozilla, also bitte verschobene Wörter ignorieren:

            http://user.meduni-graz.at/irene.mischak/Pertl/main.htm

            Ui - das ist dann wohl eine etwas größere Baustelle ...! ;-)

            Hier nur mal einige "Stichworte" auf die Schnelle:

            • Trennung von Inhalt (= HTML) und Design (= CSS) (siehe u.a. suits Antwort)
            • beachte speziell im Bezug auf die IEs das Thema "Doctype" und "Quirks Mode"
            • semantisch korrektes HTML (das beinhaltet u.a. Tabellen nur für tabellarische Daten und nicht für Layoutzwecke zu missbrauchen)
            • Javascript nur als zusätzliche Option (bspw. für mehr "Komfort" im Bezug auf die "Usability"), nicht als zwingende Voraussetzung für die Zugänglichkeit von Inhalten. Erstelle für jeden Menüpunkt eine eigene Seite, anstatt per JS die Inhalte in einem DIV auszutauschen. Das hat u.a. dieselben Nachteile wie "Frames" bspw. was die Verlinkung und somit auch das Finden über Suchmaschinen anbelangt.

            Wenn du dich zu den o.g. Punkten einmal schlau gemacht hast, bzw. irgendwelche Fragen dazu hast, dann lesen wir uns hier wieder. :-)

            Den jetzigen Ansatz solltest du so in der Form nicht weiterverfolgen, weil er wirklich so gegen alle heutzutage geltenden Regeln für "gutes Webdesign" verstößt.

            Gruß Gunther