Keine fixen Objekte (z.B. Newsticker)
Michi
- php
Hi zusammen...
Ich bin zurzeit echt am verzweifeln, ich habe vor ca. einem Monat eine Homepage mit CSS und HTML gebastelt und weil es ja keine Frames in CSS gibt, habe ich auf das SWFobjekt.js Script zurückgegriffen. Warum ich das gemacht habe hatt 2 Gründe: Zum einen habe ich links unter der Navigation einen Musik Player eingebaut und zum anderen läuft unter dem Musik Player ein Newsticker... Es ist also wichtig das wenn jetzt jemand durch die Seiten (Via Navigation) durchnavigiert, die Musik oder der Ticker weiterlaufen - wäre ja blöd wenn jedesmal wenn jemand z.b. auf die Navigationskategorie "Bilder" geht die Musik wieder von vorne startet... Naja das war alles schön und gut (mit SWFobjekt.js) und lief auch super, aber der Hacken an der Sache: Ich kann NUR .swf Dateien reinladen, d.h. auch wenn ich z.B. einen Navigationspunkt wie z.B. "Über mich" hatte wo alles ausschließlich Fließtext ist musste ich das in Flash schreiben und als .swf exportieren...
Naja, jetzt hab ich mir sagen lassen das mithilfe von .php das Thema auch anders gelöst werden kann und Frames simuliert werden können... Ich hab ewig rumgesucht und 2 Links gefunden, deren Beispiele ich selber auch nachgebaut habe (ich habe im Moment noch nicht wirklich viel Ahnung von PHP): http://www.homepage-total.de/php/seiten_generieren.php# und http://tut.php-quake.net/frames.html#u1. Das ergebnis war jedoch zermürbend... ich habe meinen Musik Player in die Navigation eingebaut und jedesmal wenn ich durchnavigieren will startet der Musik Player neu Ich bitte wirklich inständig um Hilfe, wäre wirklich eine riesen Erleichterung für mich.
Liebe Grüße, Michi - ich bin für absolut jede Hilfe dankbar
n'abend,
Naja, jetzt hab ich mir sagen lassen das mithilfe von .php das Thema auch anders gelöst werden kann und Frames simuliert werden können...
»Mittels PHP Frames simulieren« hört sich ungefähr so an wie »Mittels eines Motors ein Lenkrad simulieren«. Das sind zwei komplett verschiedene Dinge.
Du nutzt Frames (oder willst diese Nutzen), weil du bestimmte Inhalte über alle Seitenaufrufe hinweg anzeigen möchtest. Das ist völlig legitim. Für dieses Vorhaben gab dir der HTML-Gott Frames.
Was dir die Person eigentlich erklären wollte, ist nicht, dass du Frames simulieren kannst, sondern Navigationselemente, welche typischerweise in Frames ausgelagert werden, damit sie nicht in jeder einzelnen Seite fest eingebaut werden müssen, dynamisch in die einzelnen Seiten schreiben kannst.
<?php readfile('/ein/pfad/navigation.html'); ?>
Ist eine Möglichkeit den Inhalt der Datei /ein/pfad/navigation.html in eine Seite schreiben zu lassen, wenn diese vom Browser ausgeliefert werden soll. Hat den vorteil, dass du nur eine Datei pflegen musst und deine Navigation in allen deinen einzelnen Seiten "automatisch aktualisiert" wird. Das ist (imho) "ein simulierter Frame". Dämliche bezeichnung, sieht für den (unversierten) Benutzer aber vermutlich so aus
Du hast mit PHP aber _keine_ Chance das Verhalten von Frames zu simulieren. Wenn du nicht willst, dass deine tolle ohrenkrebserzeugende Hintergrundmusik zu spielen aufhört, wenn der Besucher einen Link anklickt (und somit eine andere Seite lädt), kommst du um den Einsatz von Frames nicht herum.(1)
Viel interessanter ist doch die Frage, ob du diese Musik wirklich in deine Seite einbetten musst. Findest du das toll? Bist du dir 100% sicher, dass _jeder_ Besucher das auch toll findet? Ich für meinen kleinen bescheidenen Teil _hasse_ Ohrenkrebs-Webseiten. Diese Seiten sind eben so schnell geschlossen, wie versehentlich geöffnet. Beschallende Webseiten sind nur all zu oft ein Zeichen von "hier hat sich wer an einer _privaten_ Webseite ausgetobt und einfach mal ausprobiert was man so machen kann, wenn man sämtliche Nervenbahnen für einen kurzen Zeitraum dicht macht." (Nein, das war kein persönlicher Angriff.)
(1) Es gibt die Möglichkeit Frames mittels AJAX zu simulieren. Dabei würden nur Inhalte nachgeladen und in die bestehende Seite eingebettet, resp. ausgetauscht. Das bringt meiner Meinung nach aber mehr Nachteile, als Vorteile. Zu Deutsch: es ist fürn Arsch.
weiterhin schönen abend...
(1) Es gibt die Möglichkeit Frames mittels AJAX zu simulieren. Dabei würden nur Inhalte nachgeladen und in die bestehende Seite eingebettet, resp. ausgetauscht. Das bringt meiner Meinung nach aber mehr Nachteile, als Vorteile. Zu Deutsch: es ist fürn Arsch.
Welche Nachteile siehst du denn da?
n'abend,
Welche Nachteile siehst du denn da?
(1) ist es mehr Aufwand ein Javascript-Konstrukt zu bauen, welches in der Lage ist Frames sinnvoll zu simulieren. Man bedenke, dass man es irgendwie hinbekommen muss, dass jeder Klick auf einen Link nicht mit den normalen Browserverhalten (lade Resource in aktuellem|angegebenem Frame) behandelt wird, sondern an die AJAX-Geschichte übergeben wird. Natürlich ist das nicht unmöglich, aber meiner Meinung nach unnötiger Aufwand für keinen Mehrwert (Der OP sprach schließlich nicht von irgendwelchen Transitions, Animationen, oder sonstigem tollen Kram).
(2) ist die Browser-History nicht mehr benutzbar. AJAX vermerkt seine Zustände nicht von Haus aus in der History. Back- und Forward-Buttons sind damit nutzlos - in den meisten Fällen sogar kontraproduktiv und destruktiv. Klar kann man seine AJAX Anwendung so hindrehen, dass Browser-History-Einträge geschrieben werden. Aber hast du eine Ahnung was für ein _mords_ Aufwand das ist, damit das in allen (größeren) Browsern funktioniert? [habe mich letztens damit beschäftigt. Es gibt keine wirklich zufriedenstellende Lösung.]
(3) ist die Seite bei deaktiviertem|nicht-verfügbarem Javascript *nicht* benutzbar. Viele Mobiltelefone können Webseiten eingiermaßen sinnvoll anzeigen - auch wenn die Webseiten nicht für Mobiltelefone / kleine Displays / Mini-Browser "optimiert" wurden. Setzt eine Webseite komplett auf Javascript, hast du ganz schön viel Spaß.
(4) ist die Seite dann noch weniger von Suchmaschinen lesbar, als sie es wegen der Frames ohnehin schon wäre. Auch hier kann man etliche "Hacks" einbringen, um eine saubere Indizierung zu gewährleisten - aber wozu der Aufwand?
Wenn ich tolle Animationen haben will, komme ich um Javascript nicht herum. Will ich aber nichts dergleichen haben (der OP erzählt davon zumindest mal nichts), ist es ein unnötiger Aufwand.
weiterhin schönen abend...
Viel interessanter ist doch die Frage, ob du diese Musik wirklich in deine Seite einbetten musst. Findest du das toll? Bist du dir 100% sicher, dass _jeder_ Besucher das auch toll findet? Ich für meinen kleinen bescheidenen Teil _hasse_ Ohrenkrebs-Webseiten. Diese Seiten sind eben so schnell geschlossen, wie versehentlich geöffnet. Beschallende Webseiten sind nur all zu oft ein Zeichen von "hier hat sich wer an einer _privaten_ Webseite ausgetobt und einfach mal ausprobiert was man so machen kann, wenn man sämtliche Nervenbahnen für einen kurzen Zeitraum dicht macht." (Nein, das war kein persönlicher Angriff.)
Also als erstes mal Danke für die sehr ausführliche Antwort. Eins Vorweg: Das mit dem Musik Player ist nur EINES von vielen Dingen die statisch bleiben müssen, da die Navigation bald auch mit einer FLash Navigation ersetzt wird (welche ein kleines Intro hatt). Und dieses ewige gerede mit Homepages die Musik drauf haben sehe ich mittlerweile schon als Standartspruch in fast jedem Forum, als würde den Leuten nix anderes mehr einfallen als sich über sowas aufzuregen obwohl es Sie ja gar nicht betrifft (ist nicht gegen dich im speziellen ;) also nicht persönlich nehmen bitte).
Nagut, also so wie ich das sehe bleibt mir dann nichts anderes übrig als mich mit Ajax auseinanderzusetzten :) Hast du da irgendwo zufällgi einen Link wo so eine Funktion erklärt wird, oder irgendwas wo ich ansetzten kann? Weil in Ajax kenn ich mich nu wirklich gar nicht aus... Und wie gesagt, das ist (mir persönlich vorallem) wichtig das ich das mit diesen "simulierten" Frames mache die den Inhalt von, ich nenne es mal - Teilseiten - nicht neu lädt :/
Liebe Grüße Michi und Danke dir vielmals
n'abend,
[…] Eins Vorweg: Das mit dem Musik Player ist nur EINES von vielen Dingen die statisch bleiben müssen,
Statisch im Sinne von "im akutellen Zustand erhalten, auch wenn der Beutzer eine andere Seite anfordert".
da die Navigation bald auch mit einer FLash Navigation ersetzt wird (welche ein kleines Intro hatt).
Mal abgesehen von der resultierenden sich bewegenden Pixelsuppe, bringt dir das genau was? Dass Suchmaschinenen (nein, die können noch immer kein Flash) deine Navigation nicht mehr lesen können? Dass Browser, die kein Flash an Bord haben, deine Navigation nicht mehr anzeigen können? Du meinst diese Browser gäbe es nicht? Wie verhalten sich denn die Mini-Browser auf Mobiltelefonen? etc. etc. etc.
Visuell gesehen macht es vielleicht sinn eine schöne animierte Navigation zu haben. Technisch hat das jedoch _nur_ Nachteile.
Und dieses ewige gerede mit Homepages die Musik drauf haben sehe ich mittlerweile schon als Standartspruch in fast jedem Forum, als würde den Leuten nix anderes mehr einfallen als sich über sowas aufzuregen obwohl es Sie ja gar nicht betrifft (ist nicht gegen dich im speziellen ;) also nicht persönlich nehmen bitte).
Keine Angst.
Diese "Standardsprüche" sind aber offenbar noch immer nötig.
Auf der einen Seite gibt es Situationen in denen eine Technologie zu einem Mehrwert führen kann (sinnvoller Einsatz). Auf der anderen Seite gibt es Situationen, wo eine Technologie für etwas eingesetzt wird, was im Endeffekt keinen Mehrwert, sondern eine (oft "nur" technische) Abwertung bedeutet.
Für verbohrte Besserwisser sind das natürlich total sinnlose Diskussionen.
Nagut, also so wie ich das sehe bleibt mir dann nichts anderes übrig als mich mit Ajax auseinanderzusetzten :)
Was spricht denn gegen den Einsatz von richtigen™ Frames?
Frames mittels AJAX zu simulieren bringt aus technischer Sicht ganz genau gar nichts. Für den Benutzer macht es (visuell) aber wenig bis gar keinen Unterschied, ob du Frames oder AJAX einsetzt.
In jedem Fall dürfte eine richtige™ AJAX-Lösung mehr Aufwand bedeuten.
Hast du da irgendwo zufällgi einen Link wo so eine Funktion erklärt wird, oder irgendwas wo ich ansetzten kann?
AJAX ist keine Funktion (auch keine Sammlung von Funktionen), sondern vielmehr eine Vorgehensweise, eine Bezeichnung für eine Technologie.
Google spuckt dir zu "AJAX Tutorial" sicher etliche verwertbare Webseiten aus.
Weil in Ajax kenn ich mich nu wirklich gar nicht aus... Und wie gesagt, das ist (mir persönlich vorallem) wichtig das ich das mit diesen "simulierten" Frames mache die den Inhalt von, ich nenne es mal - Teilseiten - nicht neu lädt :/
Ich habe noch immer keinen Grund gehört, der den Einsatz von richtigen™ Frames unmöglich machen würde...
weiterhin schönen abend...