Javascript und Anker auf der selben Seite

franzlst

Mitglied
Auf meiner HP http://www.roboshow.de habe ich unter "Roboter" eine Bildergallerie. Hier sind viele Bilder verschiedener Bots untereinander angeordnet.
Fängt ein neuer Roboter an, da ist das erste Bild davon ein Anker.

Über das Dropdown Menü darüber soll man einen Roboter auswählen können und die Seite springt dann automatisch zu dem Anker.

Dreamweaver hat diese Javascript Funktion gespeichert und ich benutze diese auch:
Code:
function Sprungmenue(ziel,anker){
  if(ziel != "nein")
  {
  	eval(ziel+".location='"+anker.options[anker.selectedIndex].value+"'");
  	anker.selectedIndex=0;  
  }
}
Im Dropdownmenü steht im Kopf
PHP:
<select name=\"Springe\" onChange=\"Sprungmenue('parent',this)\">
und bei den einzelnen Punkten
PHP:
<option value=\"roboter.php?auswahl=$auswahl#$botid\">
.

Soweit funktioniert das auch, nur soll bei mir in der Adressleiste immer "www.roboshow.de" stehen. Wenn ich auf andere Links klicke, bleibt das auch in der Adressleiste stehen.
Benutzt man jedoch das Dropdownmenü, lässt JS die Seite komplett neu laden, sspringt zwar zum richtigen Bild, aber in der Adressleiste steht der absolute Pfad.

Kann mir jemand sagen, wie ich das Neuladen der Seite und das Ändern der Adressleiste vermeiden kann?

Vielen Dank
 
Du könntest die Indexseite auf Framesaufteilen!

Dann hättest Du Frame 1 mit src=index.html und der größe 100%
und Frame 2 mit größe 0%

dann hast Du durch die Frameeigenschaften immer die gleiche Adresse oben drin stehen ...

ist zwar nicht sehr elegant, aber eine Lösung ;o)

MfG
Ultraflip
 
Im IE gibt es die Methode "scrollIntoView()"....damit kannst du Seitenelemente...wie der Name schon andeutet, in den sichtbaren Bereich scrollen.
Mozilla kennt diese Methode auch.
 
Und wie steht es mit Netscape und Opera?
Unterstützen die diesen Befehl?
Wahrscheinlich auch beim IE nur die neueren Versionen, oder?

Danke
 
IE ab V4...und Mozilla wie bereits gesagt. Da Netcsape auf der gleichen Technik basiert, wie Mozilla, wird es da wohl auch gehen.
Opera->Fehlanzeige
 
fatalus hat gesagt.:
IE ab V4...und Mozilla wie bereits gesagt. Da Netcsape auf der gleichen Technik basiert, wie Mozilla, wird es da wohl auch gehen.
Opera->Fehlanzeige
Das hört sich ned schlecht an, da ham die "Operer" wohl Pech gehabt.

Vielen Dank, ich werd mich mal weiter informieren.
 
Ich hab jetzt mal den Test gemacht:
Mit dem IE funkioniert dieser Befehl, Mozilla (neueste Version) auch. Jedoch schon bei Netscape neueste Version klappts nicht!
Wäre also toll, wenn ihr mich noch eine Möglichkeit nennen könntet.
 
Die andere Möglichkeit wäre eine Layer-Herumschieberei.

Alle Bilder in einen Layer packen, Position des Bildes ermitteln und anhand dessen das ganze verschieben....alles recht umständlich.

Vielleicht solltest du doch ein iFrame in Betracht ziehen...da wäre das mit einer einzigen Zeile Code getan.
 
da wäre das mit einer einzigen Zeile Code getan.

Mir wurde in einem anderen Forum geholfen, jetzt muss ich nur ein Wort ändern:

PHP:
<select name="Springe\" onChange=\"Sprungmenue('self',this)\">
statt
PHP:
<select name="Springe\" onChange=\"Sprungmenue('parent',this)\">

Vielleicht helf ich damit ja jemand anderen
 

Neue Beiträge

Zurück