Javascript Problem

Mmmmh..bin ich etwa der einzige auf der Welt, dem schon mal aufgefallen ist, dass eine Seite neu geladen wird, wenn man auf einen Link klickt :confused: :-)

Ist doch logisch...die neue Seite weiss nix von dem, was JS vorher gemacht hat.
Wenn du PHP hast, vergleiche die URL der aktuellen Seite mit den Linkzielen...sind beide identisch, gebe den HTML-Code für den "aktiven" Button aus...fertig :)
 
Hab das so gemacht. Es funktioniert zwar, jedoch gehts doch sicher noch einfacher. Kann mir jemand sagen wie? Machen will ich es selber....muss ja lernen.
PHP:
<?php
$akts = 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
$akth = 'http://'.$_SERVER['HTTP_HOST'];
//-------HOME----
if ($akts==$akth.'/start/index.php?section=home') {
$home = "<a href=index.php?section=home><img src=../images/menue/menue_02_b.gif alt=HOME width=39 height=18 border=0></a>";
}
else {
$home = "<a href=index.php?section=home onMouseOver=MM_swapImage('Image1','','../images/menue/menue_02_b.gif',1) onMouseOut=MM_swapImgRestore()><img src=../images/menue/menue_02_a.gif alt=HOME name=Image1 width=39 height=18 border=0 id=Image1></a>";
}
//-------HOME----
//
//-------EINFÜHRUNG----
if ($akts==$akth.'/start/index.php?section=einfuehrung') {
$einfuehrung = "<a href=index.php?section=einfuehrung><img src=../images/menue/menue_03_b.gif alt=EINF&Uuml;HRUNG width=64 height=18 border=0></a>";
}
else {
$einfuehrung = "<a href=index.php?section=einfuehrung onMouseOver=MM_swapImage('Image3','','../images/menue/menue_03_b.gif',1) onMouseOut=MM_swapImgRestore()><img src=../images/menue/menue_03_a.gif alt=EINF&Uuml;HRUNG name=Image3 width=64 height=18 border=0 id=Image3></a>";
}
//
//-------NEWS----
if ($akts==$akth.'/start/index.php?section=news') {
$news = "<a href=index.php?section=news><img src=../images/menue/menue_04_b.gif alt=NEWS width=41 height=18 border=0></a>";
}
else {
$news = "<a href=index.php?section=news onMouseOver=MM_swapImage('Image4','','../images/menue/menue_04_b.gif',1) onMouseOut=MM_swapImgRestore()><img src=../images/menue/menue_04_a.gif alt=NEWS name=Image4 width=41 height=18 border=0 id=Image4></a>";
}
//-------NEWS----
//
//-------BEITRÄGE----
if ($akts==$akth.'/start/index.php?section=beitraege') {
$beitraege = "<a href=index.php?section=beitraege><img src=../images/menue/menue_05_b.gif alt=BEITRÄGE width=52 height=18 border=0></a>";
}
else {
$beitraege = "<a href=index.php?section=beitraege onMouseOver=MM_swapImage('Image5','','../images/menue/menue_05_b.gif',1) onMouseOut=MM_swapImgRestore()><img src=../images/menue/menue_05_a.gif alt=BEITRÄGE name=Image5 width=52 height=18 border=0 id=Image5></a>";
}
//-------BEITRÄGE----
//
//-------DOKUMENTE----
if ($akts==$akth.'/start/index.php?section=dokumente') {
$dokumente = "<a href=index.php?section=dokumente><img src=../images/menue/menue_06_b.gif alt=DOKUMENTE width=65 height=18 border=0></a>";
}
else {
$dokumente = "<a href=index.php?section=dokumente onMouseOver=MM_swapImage('Image6','','../images/menue/menue_06_b.gif',1) onMouseOut=MM_swapImgRestore()><img src=../images/menue/menue_06_a.gif alt=DOKUMENTE name=Image6 width=65 height=18 border=0 id=Image6></a>";
}
//-------DOKUMENTE----
//
//-------CARTA MENSUAL----
if ($akts==$akth.'/start/index.php?section=carta') {
$carta = "<a href=index.php?section=carta><img src=../images/menue/menue_07_b.gif alt=CARTA MENSUAL width=81 height=18 border=0></a>";
}
else {
$carta = "<a href=index.php?section=carta onMouseOver=MM_swapImage('Image7','','../images/menue/menue_07_b.gif',1) onMouseOut=MM_swapImgRestore()><img src=../images/menue/menue_07_a.gif alt=CARTA MENSUAL name=Image7 width=81 height=18 border=0 id=Image7></a>";
}
//-------CARTA MENSUAL----
//
//-------BILDER----
if ($akts==$akth.'/start/index.php?section=bilder') {
$bilder = "<a href=index.php?section=bilder><img src=../images/menue/menue_08_b.gif alt=BILDER width=39 height=18 border=0></a>";
}
else {
$bilder = "<a href=index.php?section=bilder onMouseOver=MM_swapImage('Image8','','../images/menue/menue_08_b.gif',1) onMouseOut=MM_swapImgRestore()><img src=../images/menue/menue_08_a.gif alt=BILDER name=Image8 width=39 height=18 border=0 id=Image8></a>";
}
//-------BILDER----
//
//-------POLITISCHE GEFANGENE----
if ($akts==$akth.'/start/index.php?section=polit') {
$polit = "<a href=index.php?section=polit><img src=../images/menue/menue_09_b.gif alt=POLITISCHE GEFANGENE width=114 height=18 border=0></a>";
}
else {
$polit = "<a href=index.php?section=polit onMouseOver=MM_swapImage('Image9','','../images/menue/menue_09_b.gif',1) onMouseOut=MM_swapImgRestore()><img src=../images/menue/menue_09_a.gif alt=POLITISCHE GEFANGENE name=Image9 width=114 height=18 border=0 id=Image9></a>";
}
//-------POLITISCHE GEFANGENE----
//
//-------MENSCHENRECHTE----
if ($akts==$akth.'/start/index.php?section=menschenrechte') {
$menschenrechte = "<a href=index.php?section=menschenrechte><img src=../images/menue/menue_10_b.gif alt=MENSCHENRECHTE width=93 height=18 border=0></a>";
}
else {
$menschenrechte = "<a href=index.php?section=menschenrechte onMouseOver=MM_swapImage('Image10','','../images/menue/menue_10_b.gif',1) onMouseOut=MM_swapImgRestore()><img src=../images/menue/menue_10_a.gif alt=MENSCHENRECHTE name=Image10 width=93 height=18 border=0 id=Image10></a>";
}
//-------MENSCHENRECHTE----
//
//-------VERANSTALTUNGEN----
if ($akts==$akth.'/start/index.php?section=veranstaltungen') {
$veranstaltungen = "<a href=index.php?section=bilder><img src=../images/menue/menue_11_b.gif alt=VERANSTALTUNGEN width=91 height=18 border=0></a>";
}
else {
$veranstaltungen = "<a href=index.php?section=veranstaltungen onMouseOver=MM_swapImage('Image11','','../images/menue/menue_11_b.gif',1) onMouseOut=MM_swapImgRestore()><img src=../images/menue/menue_11_a.gif alt=VERANSTALTUNGEN name=Image11 width=91 height=18 border=0 id=Image11></a>";
}
//-------VERANSTALTUNGEN----
//
//-------KONTAKT----
if ($akts==$akth.'/start/index.php?section=kontakt') {
$kontakt = "<a href=index.php?section=kontakt><img src=../images/menue/menue_12_b.gif alt=KONTAKT width=48 height=18 border=0></a>";
}
else {
$kontakt = "<a href=index.php?section=kontakt onMouseOver=MM_swapImage('Image12','','../images/menue/menue_12_b.gif',1) onMouseOut=MM_swapImgRestore()><img src=../images/menue/menue_12_a.gif alt=KONTAKT name=Image12 width=48 height=18 border=0 id=Image12></a>";
}
//-------KONTAKT----
//
//-------LINKS----
if ($akts==$akth.'/start/index.php?section=links') {
$links = "<a href=index.php?section=links><img src=../images/menue/menue_13_b.gif alt=BILDERr width=37 height=18 border=0></a>";
}
else {
$links = "<a href=index.php?section=links onMouseOver=MM_swapImage('Image13','','../images/menue/menue_13_b.gif',1) onMouseOut=MM_swapImgRestore()><img src=../images/menue/menue_13_a.gif alt=BILDER name=Image13 width=37 height=18 border=0 id=Image13></a>";
}
//-------LINKS----
?>
 
Du kannst es auch per JS machen:
Vergleiche eingangs von MM_swapImage() das Linkziel mit der aktuellen location...sind beide identisch, verlässt du die Funktion per return ....fertig.
 
Wenn das das gleiche ist, kann ich es ja so lassen oder? Mir gings ja darum das ganze etwas zu vereinfachen um am Ende weniger Quelltext zu haben.
 
Vereinfachen kann man das Ganze schon... und zwar beträchtlich.
Wenn du mit Arrays und einer Schleife arbeitest, dürfte sich der Code um ein Vielfaches verringern.

Ob nun mit JS oder PHP ist da im Grunde egal... PHP wäre natürlich vorteilhafter.
 

Neue Beiträge

Zurück