"A. Reinhold" wrote:
Ich bin gerade dabei meine HP zu überarbeiten, da komt ein Navigator zum Einsatz, der auch aus Javascript besteht, ich denke sooo schlimm ist das nicht, und IMHO eine sehr nützliche Sache.
Markus Schiefer wrote:
Die "klassische Methode" ist die hier: http://selfhtml.teamone.de/javascript/beispiele/zweiframes.htm Allerdings setzt sie auf JavaScript auf. Du solltest also auf jeden Fall eine Navigations-Alternative anbieten, wenn Du Deine Besucher nicht vergraulen willst.
Ich habe mein vorlautes Mundwerk vor einem Jahr dazu benutzt, um zu verlauten, daß die Homepage, die ich erstelle, frei von Java JavaScript, Cookies und dem anderen ganzen Kram sein wird. (Zum einen weil ich immer wieder sehe, was passiert, wenn das ausufert. Zum anderen, weil ich davon keine Ahnung habe.) Wenn ich jetzt JavaScripte einbaue, dann sieht das so aus, als würde ich "umfallen". Ich kämpfe mich gerade durch selfhtml. Aber die Lösungen, die ich bisher fand waren halt die mit Java. Ich hatte gehofft es gibt eine "nicht dokumentierte" Lösung. "Markus Schiefer" wrote:
IMHO gibt es keine Möglichkeit, mit reinem HTML 2 Frames gleichzeitig zu ändern, es sei denn, Du machst Dir die Mühe, gleich ein neues Frameset zu laden, was je nach Umfang der Seite ganz schön ausarten kann.
Habe das eben gerade getestet: So viel größer wird der Umfang nicht. Ich rufe mit dem Link einfach eine "neue" indexhtml auf (Größe etwa 400 Byte), und die startet dann Navigator und Textseite. Aber die Ladezeiten leiden doch extrem darunter. Das merke ich, obwohl die Daten auf der Platte liegen und nicht im Netz. ??? Gibt es eigentlich eine Möglichkeit, eine neue Seite direkt aus einem HTML-Code zu starten, ohne daß ich einen Button klicken muß. Idee: Ich rufe die Textseite auf und ganz unten steht ein Kommando, daß einen neuen Navigator lädt. "Thomas Templin" wrote:
Ich würde keine Frames nehmen sondern Tabellen, dann lässtr sich mit Layern arbeiten. [snip] Der Unterschied zu deinem gewünschten Zenario ist nur, dass Du bei jedem Seiten Aufruf eine neue Navbar mit laden musst.
Ich dachte, diese Layer-Geschichte wäre Browserspezifisch. Ich erinnere mich bei selfhtml irgendetwas in dem Zusammenhang gelesen zu haben: (Netscape und Layer). Das ist nicht das Hindernis. Der Umfang meines jetzten NavBar ist 1,7k Ich arbeite mit purestem HTML. Ich benutze vi und gelgentlich kedit. Sauberer kann HTML-Code nicht werden. "Thomas Templin" wrote:
Wird der Umfang grösser würde ich einer "Entwicklungsversion" in PHP4 den Vorzug geben, alleine schon um eine bessere Wartbarkeit zu erzielen.
Leider befindet sich mein Wissen bezüglich PHP4 in einer Epsilon-Umgebung um Null. Dennis P.S. "A. Reinhold" wrote:
Zu Flash ist es gottseidank dochnoch ein sehr weiter Schritt, dass käme mir auch nicht auf die HP. Natürlich ist gerade bei solchen sachen auf die Kompatibilität zu allen Browsern zu achten.
Flash habe ich auch nur aus rhetorischen Gründen (Provokation) erwähnt :-) Gibt immer so nette PMs. -- Registered Linux User #250379 (see http://counter.li.org)
* Dennis Boller
"Markus Schiefer" wrote:
IMHO gibt es keine Möglichkeit, mit reinem HTML 2 Frames gleichzeitig zu ändern, es sei denn, Du machst Dir die Mühe, gleich ein neues Frameset zu laden, was je nach Umfang der Seite ganz schön ausarten kann.
Habe das eben gerade getestet: So viel größer wird der Umfang nicht. Ich rufe mit dem Link einfach eine "neue" indexhtml auf (Größe etwa 400 Byte), und die startet dann Navigator und Textseite.
Aber die Ladezeiten leiden doch extrem darunter. Das merke ich, obwohl die Daten auf der Platte liegen und nicht im Netz.
Ich wollte auch mal sowas wie du machen. Allerdings wirst du feststellen, daß das bei vielen Seiten nicht wirklich toll ist. Ich hatte vorher schon >100 Seiten und auf einmal ca. 180... Jetzt baue ich alles komplett neu auf, ohne Frames, JavaScript usw. Ist IMO besser und schneller. Wenn du auf Frames verzichten willst/mußt[1], kannst du in jede Seite eine Tabelle am linken Rand einfügen, in der sich die Navigation befindet. Die bleibt halt nicht stehen sondern wird mitgescrollt. Bei langen Seiten kannst du die Tabelle auch mehrmals untereinander einfügen, verlängert die Ladezeit nicht allzu dramatisch. Und bei der Darstellung sollte sich das zeitlich kaum bemerkbar machen[2], ob da eine Tabelle einmal oder mehrmals auf einer Seite ist. Bei meinem 486er mit 8MB RAM fiel es jedenfalls nicht sonderlich auf. [1] weil unpraktikabel [2] ist IIRC so ähnlich wie bei Grafiken innerhalb einer Seite, muß nur einmal berechnet werden. cu flo -- Es wundert sich immer der gleiche Grünschnabel aufs neue, dass er die Radieschen von unten betrachten kann? Daraus folgt: Der Grünschnabel ist ein Regenwurm! Und jedes Jahr betrachtet er im Radischenbeet dieselbigen von unten. [Peter Backof in dag°]
Hallo Flo Am Dienstag, 5. März 2002 21:23 schrieb Florian Gross:
* Dennis Boller
textete am 05.03.02: "Markus Schiefer" wrote:
IMHO gibt es keine Möglichkeit, mit reinem HTML 2 Frames gleichzeitig zu ändern, es sei denn, Du machst Dir die Mühe, gleich ein neues Frameset zu laden, was je nach Umfang der Seite ganz schön ausarten kann.
Habe das eben gerade getestet: So viel größer wird der Umfang nicht. Ich rufe mit dem Link einfach eine "neue" indexhtml auf (Größe etwa 400 Byte), und die startet dann Navigator und Textseite.
Aber die Ladezeiten leiden doch extrem darunter. Das merke ich, obwohl die Daten auf der Platte liegen und nicht im Netz.
Ich wollte auch mal sowas wie du machen. Allerdings wirst du feststellen, daß das bei vielen Seiten nicht wirklich toll ist. Ich hatte vorher schon >100 Seiten und auf einmal ca. 180... Jetzt baue ich alles komplett neu auf, ohne Frames, JavaScript usw. Ist IMO besser und schneller.
Wenn du auf Frames verzichten willst/mußt[1], kannst du in jede Seite eine Tabelle am linken Rand einfügen, in der sich die Navigation befindet. Die bleibt halt nicht stehen sondern wird mitgescrollt. Bei langen Seiten kannst du die Tabelle auch mehrmals untereinander einfügen, verlängert die Ladezeit nicht allzu dramatisch. Und bei der Darstellung sollte sich das zeitlich kaum bemerkbar machen[2], ob da eine Tabelle einmal oder mehrmals auf einer Seite ist. Bei meinem 486er mit 8MB RAM fiel es jedenfalls nicht sonderlich auf.
[1] weil unpraktikabel [2] ist IIRC so ähnlich wie bei Grafiken innerhalb einer Seite, muß nur einmal berechnet werden. Bei Grafiken liegt es daran, dass man eine Source angibt, aus der die Grafik geladen wird. Der Browser erkennt, dass er die gleiche Source schon einmal geladen hat und bezieht sie nicht noch einmal neu. Bei Tabellen geht das nicht, weil dort keine Sourcen angeben werden also z.B.<table src="tab.tab"> dann würde es auch mit Tabellen und jedem anderen Content klappen. Wenn Du aber auch die Tabellen in eine separate Datei ausgliederst, kannst Du sie mit PHP in ähnlicher Form mit einbinden: include("tabelleDrei.tab"); Wenn Du wirklich über 100 Seiten hast, dann solltest Du es ernsthaft in Erwägung ziehen, dieses mal zu testen. Für ein Teures CMS lohnt es vielleicht noch nicht, aber irgendwie solltest Du den Content vom Code
Das geht mit CSS auch ganz elegant. Du kannst einen Layer mit den Navigationslinks definieren und diesen an einer bestimmten Position im Fenster fixieren. Er bleibt da dann so stehen, während die übrige Seite darunter gescrollt wird. Die beste Lösung, gerade bei einer so hohen Zahl von Seiten, wie von Dir angegeben ist es die Seite zu zerlegen und entweder mit PHP oder SHTML wieder zusammenzusetzen: Du hast dann z.B. die Dateien -head.php //der Header und z.B Seitenkopf-Tabelle und Banner -navig.php //die linke (oder rechte) Navigationstabelle footer.php //der Seiten-Fuss All der Code, der auf jeder Seite benötig wird, wird in diese Dateien aufgeteilt und dann in die Contentseiten eingebunden: Beispiel: <? include("head.php"); include("navig.php"); Seiten-Content und viel BlaBla mit bunten Bildern include("footer.php"); ?> So kann dann jede Content-Seite aussehen, spart ne Menge Arbeit und garantiert, dass man nichts vergisst und die Seiten alle die gleiche Optik haben. mit SHTML gehts im Prinzip genauso, die Syntax sieht ein kleines bischen anders aus. trennen, um die Geschichte leichter handhaben zu können. CU Thorsten -- Thorsten Körner || thorstenkoerner@123tkshop.org Dannenkoppel 51 || thorstenkoerner@thorsti.org 22391 Hamburg || GNU-GPG Key: 2D2C4868C007C4FA http://www.123tkShop.org || reg. Linux-User:#187283
Hallo Dennis, hallo A., hallo Leute, Am Dienstag, 5. März 2002 15:16 schrieb Dennis Boller:
"A. Reinhold" wrote:
Ich bin gerade dabei meine HP zu überarbeiten, da komt ein Navigator zum Einsatz, der auch aus Javascript besteht, ich denke sooo schlimm ist das nicht, und IMHO eine sehr nützliche Sache.
Ich habe mein vorlautes Mundwerk vor einem Jahr dazu benutzt, um zu verlauten, daß die Homepage, die ich erstelle, frei von Java JavaScript, Cookies und dem anderen ganzen Kram sein wird. (Zum einen weil ich immer wieder sehe, was passiert, wenn das ausufert. Zum anderen, weil ich davon keine Ahnung habe.) Wenn ich jetzt JavaScripte einbaue, dann sieht das so aus, als würde ich "umfallen".
Ich kämpfe mich gerade durch selfhtml. Aber die Lösungen, die ich bisher fand waren halt die mit Java. Ich hatte gehofft es gibt eine "nicht dokumentierte" Lösung.
Nicht Java, nur JavaScript. Das ist ein gewaltiger Unterschied. Du solltest es aber so bauen, dass auch mit deaktiviertem JavaScript der Navigationsbereich geladen wird und von dort aus per Klick die Hauptseite. Ich gehe mal von einem Frameset mit 3 Frames aus: ,--------------------------------------, | Hauptnavigation | |--------------------------------------| |Unter-| | | navi | Inhaltsseiten | | | | '--------------------------------------' Dann schreibst Du in der Hauptnavigation die Links folgendermaßen: <a href=subnavi.htm target=Unternavi onClick="parent.Inhaltsseiten.location.href='inhalt.htm'">Link</a> Damit wird auf jeden Fall subnavi.htm ins Unternavi-Frame geladen, bei aktiviertem JavaScript wird auch noch inhalt.htm ins Frame "Inhaltsseiten" geladen. Zusätzlich solltest Du in subnavi.htm einen Link vorsehen, um die Inhaltsseiten nachzuladen, wenn jemand JavaScript deaktiviert hat. Also: <a href=inhalt.htm target=Inhaltsseiten>Inhalt</a>
Gibt es eigentlich eine Möglichkeit, eine neue Seite direkt aus einem HTML-Code zu starten, ohne daß ich einen Button klicken muß. Idee: Ich rufe die Textseite auf und ganz unten steht ein Kommando, daß einen neuen Navigator lädt.
Wenn das Kommando in JavaScript geschrieben ist, ja.
"Thomas Templin" wrote:
Ich würde keine Frames nehmen sondern Tabellen, dann lässtr sich mit Layern arbeiten. [snip]
Moment, Tabelle != Layer ! Tabellen haben immer eine Gitterstruktur (auch wenn man die mit verbundenen Zellen oft nicht mehr mitbekommt), Layer/Ebenen sind absolut frei positionierbar und können auch überlappen.
Der Unterschied zu deinem gewünschten Zenario ist nur, dass Du bei jedem Seiten Aufruf eine neue Navbar mit laden musst.
Ich dachte, diese Layer-Geschichte wäre Browserspezifisch. Ich erinnere mich bei selfhtml irgendetwas in dem Zusammenhang gelesen zu haben: (Netscape und Layer).
<layer> ist wirklich Netscape-spezifisch (nur für Netscape 4.xx) Es sollte mit allen Browsern gehen (getestet mit IE5, Netscape 4.51, 4,72 und 6.0 sowie Konquereor), wenn Du stattdessen <div style="position:absolute;left:0px;top:20px"> verwendest (also per CSS positionieren). Wenn Du das ganze für den Navigationsbereich verwenden möchtest, ist es wohl sinnvoll, die Positionsangaben in eine externe CSS-Datei auszulagern und mit <div class=nav_leiste> die Positionierung aus dem Stylesheet zu übernehmen. Einbindung der CSS-Datei im Dateikopf mit <link rel=....>, näheres siehe SelfHTML. Nur solltest Du es nicht mit Ebenen übertreiben, so ab ca. 20 <div>s scheint Netscape 4.xx ins Schleudern zu kommen ;-)
Das ist nicht das Hindernis. Der Umfang meines jetzten NavBar ist 1,7k Ich arbeite mit purestem HTML. Ich benutze vi und gelgentlich kedit. Sauberer kann HTML-Code nicht werden.
Stimmt. Vi ist einer der besten HTML-Editoren ;-)
"Thomas Templin" wrote:
Wird der Umfang grösser würde ich einer "Entwicklungsversion" in PHP4 den Vorzug geben, alleine schon um eine bessere Wartbarkeit zu erzielen.
Gute Idee, sollte man mal drüber nachdenken. Besonders die Include-Anweisung wäre da wohl interessant. Allerdings kann man IMHO genausogut mit HTML-Präprozessoren wie z. B. MakeHTML arbeiten.
Leider befindet sich mein Wissen bezüglich PHP4 in einer Epsilon-Umgebung um Null.
Schau Dich mal auf http://www.php.net um, dort gibt es eine recht gute Anleitung zum Download. Gruß, duck und weg - war immerhin OT ;-) Christian Boltz PS: Weitere Fragen gern auch per PM. -- Registrierter Linux-Nutzer #239431 Linux - life is too short for reboots.
Hallo, On Tue, 05 Mar 2002, Dennis Boller wrote:
Ich habe mein vorlautes Mundwerk vor einem Jahr dazu benutzt, um zu verlauten, daß die Homepage, die ich erstelle, frei von Java JavaScript, Cookies und dem anderen ganzen Kram sein wird. (Zum einen weil ich immer wieder sehe, was passiert, wenn das ausufert. Zum anderen, weil ich davon keine Ahnung habe.) Wenn ich jetzt JavaScripte einbaue, dann sieht das so aus, als würde ich "umfallen".
Ich kämpfe mich gerade durch selfhtml. Aber die Lösungen, die ich bisher fand waren halt die mit Java. Ich hatte gehofft es gibt eine "nicht dokumentierte" Lösung.
Falls die HP auf nem Apachen mit mod_include laufen kann/soll, schau dir das mal an... Ich hab fuer meine HP mal damit angefangen... Die Navigation sah dann z.B. so aus (war nie online, stammt nur aus der "Ausprobier"-Phase (im "UserDir") der Idee fuer das seit Jahren ueberfaellige Update der HP): ==== /~dh/index.shtml ==== <!--#set var="DOCUMENT_TITLE" value="Home www.dhaller.de" --> <!--#include virtual="/~dh/ssi/header.shtml" --> <h1><!--#echo var="DOCUMENT_TITLE" --></h1> [.. eigentlicher Inhalt von index.shtml aber ohne header, navigation, Ueberschrift und footer ..] <!--#include virtual="/~dh/ssi/footer.shtml" --> ==== ==== /~dh/ssi/header.shtml (gekuerzt) ==== <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN"> <html> [..] <title><!--#echo var="DOCUMENT_TITLE" --></title> </head>
[..]