hilfdirselbst.ch
Facebook Twitter gamper-media
"Funktioniert nicht" ist keine hinreichende Fehlerbeschreibung.
supertoll
Beiträge: 43
9. Mai 2003, 10:01
Beitrag #1 von 3
Bewertung:
(625 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Bild in anderem Frame ändern


Hallo Leute

Folgende Frage:

-Ich habe ein 2-Frame-HTML (Navigation und Hauptinhalt).
-Die Navigationspunkte sind Rollover-Bilder.
-Ich will, dass wenn ich zum Beispiel "home" klicke, dieses auch im Over-Status bleibt, damit der User sieht, wo er sich auf der Site befindet.

Ich weiss, dass es ein ganz simples Script geben muss das wohl irgendwie lautet: If frame "mainframe" content:home.html change image home.gif->home_over.gif, frame "navigation" navigation.html.

Irgendwie so.

Wer kennt mein Problem und hat ne Lösung parat?

Merci und Gruss

Rafael Top
 
X
exquisitus
Beiträge: 247
9. Mai 2003, 21:05
Beitrag #2 von 3
Beitrag ID: #34598
Bewertung:
(625 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Bild in anderem Frame ändern


hallo Rafael

hab das jeweils wie folgt gelöst:

im navigations frame hat es eine JS funktion welche ein navigations item auf "selected" setzt.
jede seite die ins inhalts frame geladen wird ruft im onload handler diese funktion auf und übergibt einen parameter welcher das navigations item identifiziert und setzt.
die idee dabei ist dass sich jede inhaltseite bei der navigation "registriert". so ist immer sichergestellt dass die navigation richtig eingestellt ist.


ich gehe für dieses beispiel davon aus dass im frameset das navigations frame "navFrame" und das inhalts frame "contentFrame" heisst.

navigations frame:
----------------------------------------

<html>
<head>
<script type="text/javascript">

loaded = false;
onload = function() {
loaded = true;
};

var arrNavItemNames = ["home", "news", "about"];

function synchroniseNavigation(sNavItemName)
{
// diese funktion wird vom inhalts frame aufgerufen
resetNavigation();
document.images[sNavItemName].src = sNavItemName +"_over.gif";
}
function resetNavigation()
{
// setzt alle navigations items auf "normal" zurück
for (var i=0; i<arrNavItemNames.length; i++) {
document.images[arrNavItemNames].src = arrNavItemNames +".gif";
}
}

</script>
</head>
<body>
<img name="home" src="home.gif" />
<img name="news" src="news.gif" />
<img name="about" src="about.gif" />
</body>
</html>

----------------------------------------



inhalts frame seite:
----------------------------------------

<html>
<head>
<script type="text/javascript">

var sNavItemName = "home";

onload = initialize;
function initialize() {
if (!parent.navFrame.loaded) {
window.setTimeout(initialize, 100);
return;
}
parent.navFrame.synchroniseNavigation(sNavItemName);
};
</script>
</head>
<body>
hallo welt
</body>
</html>

----------------------------------------


hth
gruss
Steven

ps: hab das jetzt einfach mal schnell ins blaue raus gecodet und nicht getestet. das konzept als solches funktioniert aber sehr gut, auch wenn sich hier vielleicht irgendwo ein fehler eingeschlichen hat.
als Antwort auf: [#34480] Top
 
Anonym
Beiträge: 22827
9. Mai 2003, 21:16
Beitrag #3 von 3
Beitrag ID: #34599
Bewertung:
(625 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Bild in anderem Frame ändern


okay, super danke. Werd das probieren.
Hast du noch eine URL wo das läuft?

Gruzz

Rafael
als Antwort auf: [#34480] Top