Antworten auf deine Fragen:
Neues Thema erstellen

Java Script und Frames Probleme

JackieChan

Aktives Mitglied

Hi ich sitze wieder mal vor einem Problem .

Ich hab auf meiner Hp Zwei Frames eingebaut , die ich ich mit einem Link beide ansteuere ,
das ganze durch Java Script gelöst .
Nur hab ich jetzt das Problem das wenn ich im Browser auf den Zurück Button klicke sich nur 1 Frame wieder zurück auf die vorige seite ändert und der 2 gleich bleibt .
Wie kann das lösen sich beim zurück klicken bei sich wieder auf das vorrige ändern ???

Auch durch Java Script ?

mfg
 

sokie

Mod | Web

AW: Java Script und Frames Probleme

nun werden wir das internet herunterladen und dann suchen welches die Seite ist, bei der das beschriebene Problem auftritt - vielleicht haben wir sie ~2015 gefunden.
ein link zur Seite würde ein paar jahre sparen helfen.
 

Top_Gun

Aktives Mitglied

AW: Java Script und Frames Probleme

Ach, nun dann werden wir unsere eigenen Seiten basteln und schauen bei welcher das Problem auftritt. Wenn wir das dann gefunden haben werden wir mit dem Quelltext auf Lösungssuche gehen. Oder du postest einfach deinen...
 

JackieChan

Aktives Mitglied

AW: Java Script und Frames Probleme

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Reitstall Winkler V2.0</title>
<style type="text/css">
<!--
body {
background-color: #FFFFFF;
margin-left: 0px;
margin-top: 0px;
margin-right: 0px;
margin-bottom: 0px;
background-image: url(Bilder/Aufbau/Hintergrund1.jpg);
background-repeat: repeat-x;
}
-->
</style>

<script language="JavaScript">
<!--
function Home()
{
parent.MenueFrame.location = "Menue.html";
parent.TextFrame.location = "Main.html";
}
function Stall()
{
parent.MenueFrame.location = "Seiten/Menue/Stall.html";
parent.TextFrame.location = "Seiten/Stall.html";
}
function Verein()
{
parent.MenueFrame.location = "Seiten/Menue/Verein.html";
parent.TextFrame.location = "Seiten/Verein.html";
}
function Bilder()
{
parent.MenueFrame.location = "Seiten/Menue/Bilder.html";
parent.TextFrame.location = "Seiten/Bilder.html";
}
function Gaestebuch()
{
parent.MenueFrame.location = "Seiten/Menue/Gaestebuch.html";
parent.TextFrame.location = "Seiten/Gaestebuch.html";
}
function Kontakt()
{
parent.MenueFrame.location = "Seiten/Menue/Kontakt.html";
parent.TextFrame.location = "Seiten/Kontakt.html";
}
-->
</script>




<script type="text/javascript">
<!--
function MM_findObj(n, d) { //v4.01
var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers.document);
if(!x && d.getElementById) x=d.getElementById(n); return x;
}
function MM_preloadImages() { //v3.0
var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
if (a.indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a;}}
}
function MM_swapImgRestore() { //v3.0
var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a)&&x.oSrc;i++) x.src=x.oSrc;
}
function MM_swapImage() { //v3.0
var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
if ((x=MM_findObj(a))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
//-->
</script>
</head>

<body onload="MM_preloadImages('Bilder/Aufbau/Homepage_05_gedrueckt.jpg','Bilder/Aufbau/Homepage_06_gedrueckt.jpg','Bilder/Aufbau/Homepage_07_gedrueckt.jpg','Bilder/Aufbau/Homepage_08_gedrueckt.jpg','Bilder/Aufbau/Homepage_03_gedrueckt.jpg','Bilder/Aufbau/Homepage_04_gedrueckt.jpg')">

<!-- ImageReady Slices (Homepage.psd) -->
<table id="Tabelle_01" width="1020" height="184" border="0" cellpadding="0" cellspacing="0">
<tr>
<td colspan="9">
<img src="Bilder/Aufbau/Homepage_01.jpg" width="1020" height="116" alt=""></td>
</tr>
<tr>
<td colspan="2">
<img src="Bilder/Aufbau/Homepage_02.jpg" width="263" height="68" alt=""></td>
<td>
<a href="javascript:Home()" onmouseout="MM_swapImgRestore()" onmouseover="MM_swapImage('Image19','','Bilder/Aufbau/Homepage_03_gedrueckt.jpg',1)"><img src="Bilder/Aufbau/Homepage_03.jpg" name="Image19" width="81" height="68" border="0" outline-style: none; id="Image19" /></a></td>
<td>
<a href="javascript:Stall()" onmouseout="MM_swapImgRestore()" onmouseover="MM_swapImage('Image20','','Bilder/Aufbau/Homepage_04_gedrueckt.jpg',1)"><img src="Bilder/Aufbau/Homepage_04.jpg" name="Image20" width="104" height="68" border="0" id="Image20" /></a></td>
<td>
<a href="javascript:Verein()" onmouseout="MM_swapImgRestore()" onmouseover="MM_swapImage('Image21','','Bilder/Aufbau/Homepage_05_gedrueckt.jpg',1)"><img src="Bilder/Aufbau/Homepage_05.jpg" name="Image21" width="122" height="68" border="0" id="Image21" /></a></td>
<td>
<a href="javascript:Bilder()" onmouseout="MM_swapImgRestore()" onmouseover="MM_swapImage('Image22','','Bilder/Aufbau/Homepage_06_gedrueckt.jpg',1)"><img src="Bilder/Aufbau/Homepage_06.jpg" name="Image22" width="89" height="68" border="0" id="Image22" /></a></td>
<td>
<a href="javascript:Gaestebuch()" onmouseout="MM_swapImgRestore()" onmouseover="MM_swapImage('Image23','','Bilder/Aufbau/Homepage_07_gedrueckt.jpg',1)"><img src="Bilder/Aufbau/Homepage_07.jpg" name="Image23" width="116" height="68" border="0" id="Image23" /></a></td>
<td>
<a href="javascript:Kontakt()" onmouseout="MM_swapImgRestore()" onmouseover="MM_swapImage('Image24','','Bilder/Aufbau/Homepage_08_gedrueckt.jpg',1)"><img src="Bilder/Aufbau/Homepage_08.jpg" name="Image24" width="103" height="68" border="0" id="Image24" /></a></td>
<td>
<img src="Bilder/Aufbau/Homepage_09.jpg" width="142" height="68" alt=""></td>
</tr>


<tr>
<td>
<img src="Bilder/Abstandhalter.gif" width="250" height="1" alt=""></td>
<td>
<img src="Bilder/Abstandhalter.gif" width="13" height="1" alt=""></td>
<td>
<img src="Bilder/Abstandhalter.gif" width="81" height="1" alt=""></td>
<td>
<img src="Bilder/Abstandhalter.gif" width="104" height="1" alt=""></td>
<td>
<img src="Bilder/Abstandhalter.gif" width="122" height="1" alt=""></td>
<td>
<img src="Bilder/Abstandhalter.gif" width="89" height="1" alt=""></td>
<td>
<img src="Bilder/Abstandhalter.gif" width="116" height="1" alt=""></td>
<td>
<img src="Bilder/Abstandhalter.gif" width="103" height="1" alt=""></td>
<td>
<img src="Bilder/Abstandhalter.gif" width="142" height="1" alt=""></td>
</tr>
</table>




</body>
</html>


Das ist mein Quellcode ,
 

m_c

Nicht mehr ganz neu hier

AW: Java Script und Frames Probleme

@Top_Gun: Die zwei Dateien sind halt die Inhalte der Framedateien ;)
 

netbandit

Aktives Mitglied

AW: Java Script und Frames Probleme

Wird ja auch eine Seite nach der anderen geladen, 2 Seiten sind also 2 Schritte zurück.

1. Möglichkeit; ein Hinweis: Bitte zwei Mal auf die Zurückschaltfläche klicken um zur vorherigen Seite zu gelangen :D

2. Möglichkeit; eigene Schaltfläche oder ein Link und mit Javascript lösen: history.go(-2) oder/und passende Funktion basteln

HTML:
function h_back()
{
parent.MenueFrame.history.back();
parent.TextFrame.history.back();
}
3. Möglichkeit: Seitenaufbau komplett umschmeißen :uhm:

Edit: Zu 3 fällt mir noch ein, daß es auch möglich wäre, von der einen Datei z.B. Verein das passende Menue zu laden und umgekehrt. Dann könntest Du Dir auch das Laden von zwei Frames per Javascript sparen und "echte" Verweise einbauen:

irgendwie so

In der Seiten/Verein.html
HTML:
parent.MenueFrame.location = "Seiten/Menue/Verein.html";
und in der Seiten/Menue/Verein.html
HTML:
parent.TextFrame.location = "Seiten/Verein.html";
Dann sollte auch 1x klicken reichen um zurück zu gelangen :hmpf:





@m_c: wo ist die zweite Seite?
 
Zuletzt bearbeitet:

Top_Gun

Aktives Mitglied

AW: Java Script und Frames Probleme

@m_c: Wenn ich zwei Dateien lade, sind das noch lange keine Frames... Außerdem werden in dem Beispiel, soweit ich sehen kann, keine 2 Dateien geladen...
 

JackieChan

Aktives Mitglied

AW: Java Script und Frames Probleme

@ Top Gub

function Home()
{
parent.MenueFrame.location = "Menue.html";
parent.TextFrame.location = "Main.html";
}

Wen Function Home ausgeführt wird werden die Menue und Main. html in die Frames Menue und Text geladen

@ Netbandit

Also soll ich in der Haupt seite ich im header einfach einen Java Link setzten der das dazu passende Menü lädt ?

<script language="JavaScript">
<!--
parent.MenueFrame.location = "Seiten/Menue/Verein.html";
//-->
</script>

Ist das so richtig ?
 
Zuletzt bearbeitet:

Top_Gun

Aktives Mitglied

AW: Java Script und Frames Probleme

@ Top Gub

function Home()
{
parent.MenueFrame.location = "Menue.html";
parent.TextFrame.location = "Main.html";
}

Wen Function Home ausgeführt wird werden die Menue und Main. html in die Frames Menue und Text geladen
Es gibt in deinem Quellcode aber gar keine Frames...
Vielleicht verstehst du etwas anderes unter Frames als ich?! Frames sind das hier:

Wenn du aber mit Frames irgendwelche div-Elemente meinst die da ausgetauscht werden sollen, muss ich dich enttäuschen in deinem Beispiel gibt es keine divs die MenueFrame und TextFrame heißen.

Eigentlich gibt es rein gar nichts was diese Bezeichnungen trägt...

Und je länger ich mir deinen Quelltext anschaue, desto mehr drängt sich der Verdacht auf, dass es sich dabei lediglich um deine Menue.html handelt und nicht um die Seite mit deinen Frames...


Natürlich gibt es eine geringe Möglichkeit dass ich mich in all den Punkten täusche, dann bitte ich doch jemanden der wirklich Ahnung hat auch mich zu erleuchten.
 

JackieChan

Aktives Mitglied

AW: Java Script und Frames Probleme

So hab die Vorläufige Hp jetzt mal provesorisch raufgeladen.



Dort könnt Ihr das Problem nach verfolgen.
 

Top_Gun

Aktives Mitglied

AW: Java Script und Frames Probleme

Ah geht doch, endlich sieht man mal alle Seiten...

Also netbandit hat ja schon fast alle Möglichkeiten genannt, also werd ich das mal aufgreifen (ich unterteile 3. mal in 3. und 4. sind ja eigentlich zwei Punkte):

3. Möglichkeit: Seitenaufbau komplett umschmeißen :uhm:
Ich sehe auf der Seite gar keine Notwendigkeit mit Frames zu arbeiten und würde dir daher raten, das ganze anders zu gesalten.


4. Möglichkeit
Edit: Zu 3 fällt mir noch ein, daß es auch möglich wäre, von der einen Datei z.B. Verein das passende Menue zu laden und umgekehrt. Dann könntest Du Dir auch das Laden von zwei Frames per Javascript sparen und "echte" Verweise einbauen:

irgendwie so

In der Seiten/Verein.html
HTML:
parent.MenueFrame.location = "Seiten/Menue/Verein.html";
und in der Seiten/Menue/Verein.html
HTML:
parent.TextFrame.location = "Seiten/Verein.html";
Dann sollte auch 1x klicken reichen um zurück zu gelangen :hmpf:
Das ganze hat eine Stolperfalle und einen ganz großen Haken:

Solperfalle - Wenn beide Funktionen (wohl onload) eingetragen wurden, gibt es eine unendliche Schleife und die Seiten laden sich immer wieder gegenseitig neu.

Haken - Wenn die Stolperfalle überwunden ist, besteht das Problem, dass man lediglich nur einmal auf Zurück klicken kann. Denn sobald dies getan wurde, lädt sich eine neue Seite. Klickt man wieder auf Zurück landet man auf der selben auf der man schon ist.


5. Möglichkeit
Anstelle das Submenu und den Content in zwei Frames zu laden, könnte man ein Frameset in ein Frame laden.
So würde das Hauptmenu die Anzeige im Hauptframe steuern. Und im Hauptframe könntest du über das Untermenu ein weiteres Frame steuern.
Damit würde man dann theoretisch beim Klick auf Zurück nur das eine Hauptframe laden und nicht zwei Frames...

Aber dazu muss ich sagen, dass Frames alleine schon pfui sind. Frames in Frames sind noch schlimmer...
 

netbandit

Aktives Mitglied

AW: Java Script und Frames Probleme

4. Möglichkeit

Das ganze hat eine Stolperfalle und einen ganz großen Haken:

Solperfalle - Wenn beide Funktionen (wohl onload) eingetragen wurden, gibt es eine unendliche Schleife und die Seiten laden sich immer wieder gegenseitig neu.

Na ups, da hast Du recht.

Dann vielleicht so:

Seiten/Verein.html
HTML:
<script language="JavaScript">
<!--
if(parent.MenueFrame.location!='http://meinedomain.de/Seiten/Menue/Verein.html'){
   parent.MenueFrame.location.href='http://meinedomain.de/Seiten/Menue/Verein.html';
}
//-->
</script>
Seiten/Menue/Verein.html
HTML:
<script language="JavaScript">
<!--
if(parent.TextFrame.location!='http://meinedomain.de/Seiten/Verein.html'){
   parent.TextFrame.location.href='http://meinedomain.de/Seiten/Verein.html';
}
//-->
</script>
 

JackieChan

Aktives Mitglied

AW: Java Script und Frames Probleme

Wie würdet Ihr das ganze Angehen wenn Ihr die Frames weglassen würdet ???
Mit div Container ???
Nur mein css ist noch ned wirklich gut deswegen verwende ich das was ich so halbwegs kann.
 

Top_Gun

Aktives Mitglied

AW: Java Script und Frames Probleme

Wie würdet Ihr das ganze Angehen wenn Ihr die Frames weglassen würdet ???
Mit div Container ???
Ja... und ich würde nicht nur die Frames weglassen sondern auch die Tabellen...

Nur mein css ist noch ned wirklich gut deswegen verwende ich das was ich so halbwegs kann.
Frames und Tabellen sind nicht zeitgemäß, da noch mit zu Arbeiten, Zeit rein zustecken evtl noch was Lernen, lohnt nicht.
Also geh mit der Zeit und lerne CSS. Klar ist das erstmal ein bissl Arbeit, die lohnt sich aber.
 

JackieChan

Aktives Mitglied

AW: Java Script und Frames Probleme

Mano ,was hab ich ma da angetan. Hab die nächste Woche keine Zeit zu lernen :(

Muss die HP bis am 25. November abgeben, und da sollte sie fertig sein.

Jedefals danke für eure Tips.
 

AlphaGen

Nicht mehr ganz neu hier

AW: Java Script und Frames Probleme

Also ich hab mir am Anfang auch bisschen schwer getan mit divs, da ich zu einer Zeit mit HTML angefangen hab, in der Tabellen standard waren. Hab dann viele Jahre nix mit HTML gemacht.

Aber ich muss sagen, nachdem ich mich jetzt gute 4 - 6 Wochen mit HTML, CSS, PHP, SQL und Javascript (hier auch mit AJAX und JSON) beschäftigt habe muss ich ersthaft drüber lachen was ich früher gemacht habe.

divs sind heute Standard. Am Anfang nicht ganz einfach aber im nachhinein sehr mächtig. Tabellen kann man z.B. nicht übereinander legen ;-)

Aber es gibt einige Dinge bei divs zu beachten (IE unterstützt nicht position:fixed ect.).

Das hier hat mir sehr geholfen:
 
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Flatrate für Tutorials, Assets, Vorlagen

Zurzeit aktive Besucher

Statistik des Forums

Themen
118.565
Beiträge
1.538.067
Mitglieder
67.488
Neuestes Mitglied
Andrew56524
Oben