• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Ersatz für Frames

Status
Für weitere Antworten geschlossen.

Kurschi

Neues Mitglied
Ersatz für Frames

Hallo,

kann mir jemand einen Ersatz für Frames sagen?
Vielleicht ein Script, das mir in einem definierten Bereich auf Klick einer Navigationsbar die gewünschte Seite lädt. Die Navigationsbar sollte wie bei einer Frame trotzdem bleiben.

Vielen Dank im Voraus
 
layer, in diesem fall. diese kann man mit javascript ausblenden und einblenden. mach dich mal bei selfhtml.de ueber <div> schlau. dann kannst du das attribut style="display: none; visibility: hidden;" verwenden, um den ganzen <div> auszublenden. des weiteren kannst du mit JavaScript (achtung, die <DIV> muessen einheitlich benannt werden, e.g. id="seite1") auf die DIV elemente zugreiffen und sie einzeln ein und ausblenden.

Hier ein beispielcode:

<SCRIPT language="JavaScript">
<!--

function show_layer(id,state) {
if (state == 'visible') { hide_all_layers(); }
if (document.all) {
tmp = eval( "document.all." + id + ".style");
}
else {
tmp = eval("document.getElementById('"+id+"').style");
}
tmp.visibility = state;
// kleiner bugfix fuer IE, der hier manchmal probleme hat
if (state == 'visible') {
tmp.zIndex=55;
} else {
tmp.zIndex=30;
}
}

// -->
</SCRIPT>

verwendet wird die funktion show_layer(div_id,'visible') um anzuzeigen, 'hidden' um auszublenden. eine funktion hide_all_layers() muss erstellt werden, um zuerst alle div elemente auszublenden. Der sourcecode funktioniert, aber ich behaupte nicht dass er perfekt ist. desweitern wuerde ich diese variante nicht vorschlagen, da es ein hoellenaufwand ist und im grunde wenig bringt.

und nein, mit PHP geht das nicht :)
 
n php switch könnte so aussehen bzw. tut es auch :D

Code:
<?php
switch($section) {           // in diesem fall wird die stelle section genannt
case "a" : include("a.php"); break;    // im fall a die seite a.php einfügen
case "b" : include("b.php"); break;    // das geht unendlich oft
default: include("standard.php"); break; // so lange noch kein fall eingetreten 
}                                                           ist wird das(standard.php) 
?>                                                         angezeigt
a und a.php können natürlcih beliebig benannt werden :D
der link um etwa darin zu öffnen muss so aussehen
Code:
[url="index.php?section=a"]a[/url]
in diesem beispiel tritt der fall a ein. die seite a.php wird angezeigt.
 
spongebob: was ist dann aber der vorteil gegenueber frames? es muss die seite ja trotzdem neu geladen werden. deine loesung funktioniert natuerlich auch, und ist sogar ziemlich gut, bzw. auch gut abgesichert, was bei solchen sachen ja das A und O ist :)
 
das alles neu geladen wird stimmt natürlcih... und um ehrlich zu sein dachte ich als cihs gesucht hab auch es würde nur den einzelnen beriech neu laden....
aber....(das böse aber :D )
1.) meiner meinung nach is es im quelltext übersichtlicher und "sauberer" ein php switch zu verwenden.
2.) ich persönlcih benutze lieber div bereiche als frames. der umgang is einfach komfortabler auch´gegenüber i frames.
man kann viel geordneter arbeiten.

das 2te is natürlcih nur meine meinung aber damit für mcih grund genug.

nebenbei hab ich (vor diesem thread) nie gesagt das ich ein php switch besser finde. es wurde nur ein switch weiter oben erwähnt und ich wollte nur der vollständigkeit halber hier noch ein beispiel reinschhreiben.
 
meiner meinung nach is es im quelltext übersichtlicher und "sauberer" ein php switch zu verwenden.
voll und ganz deiner meinung!

ich persönlcih benutze lieber div bereiche als frames. der umgang is einfach komfortabler auch´gegenüber i frames.
man kann viel geordneter arbeiten.
bis auf einige spezialfaelle (die dann aber eh offensichtlich sind) auch ganz deiner meinung!

persoenlich wuerde ich sowieso die seite immer neu laden lassen, habe die fragestellung aber so verstanden dass er die seite nicht immer neu laden lassen will. ist aber jetzt natuerlich interpretationssache :)
 
Vielen Dank für die vielen Antworten.

Also bei diesem Javascript, ist der Nachteil, dass ich Tabellen habe, also wenn ich ne andere Auflösung habe ist das ganze Design verzerrt, sehe ich das richtig? Bei PHP wohl genauso, da ich da auch Tabellen habe.

Was ist den eigentlich der Nachtteil von Frames?
 
javascript und PHP verzerren gar nix, frames genauso. der nachteil von frames ist dass du viele einzelne dateien hast, ohne dadurch irgendwie an dynamik zu gewinnen.
 
Jetzt muss sich mal ein ganz Neuer einklinken.

Wie schaut das eigentlich aus nun:

Folgend:

Gehen wir von aus, dass ich in einem Frame oder einem Div-Kontainer/Bereich auf weitere verschiedenen htm(l)-Seiten verweisen will, ... ich meine.. alles kein Problem "Target='Framename_bzw_Div_BereichID'" und fertig - sehe ich das richtig?

Was ist aber, wenn sich nun jmd. diese htm(l)-Seite (den Namen) merkt und explizit diesen in die Adress-Browser-Zeile eingibt? - dann wird doch auch nur genau diese htm(l)-Seite angezeigt, oder?

Gibt es da keine Möglichkeit, so daß ich das ganze Seitenzeugs drumrum - wie es sich gehört - dann automatisch mitangezeigt wird?

so.. good night. :)
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben