Murmelin: Zweimal derselbe Link macht nicht dasselbe

Beitrag lesen

Hallo,

in einem "Guckfenster" von 600px Breite sehe ich den ersten von sechs 600px breiten Abschnitten x1 bis x6. Per Link in x1 springe ich eine JS Routine an, die den 6er-Block um 600px nach links schiebt. Nun ist x2 im Guckfenster. Von da komme ich nach x3 usw.

x1  x2  x3  x4  x5  x6
+---+---+---+---+---+---+
!   !   !   !   !   !   !
!   !   !   !   !   !   !
+---+---+---+---+---+---+
<-------- 3600px ------->

<a href="#x2" onmousedown='return h_scroll("-600")'>zu Seite 2</a> &nbsp;  

Exakt den gleichen Link habe ich auch auf dem feststehenden Kopf der HTML-Seite, um direkt zu einem der 6 Abschnitte zu scrollen.

Doch da wird offenbar auch href="#x2" ausgeführt. Der 6er-Block springt nach oben und in der Adresszeile des Browsers wird /#x2 angehängt, das war beim anderen Link nicht so.

Ich kann mir nicht erklären, warum der "mitfahrende" Link richtig funktioniert, der "feststehende" aber nicht.

<script type="text/javascript">  
var ist_px = 0, soll_px, diff_px, aktiv;  
function h_scroll(px) {  
  soll_px = px;  
  if ( ist_px > soll_px ) // nach rechts schieben  
  {  
    diff_px = 60; // margin wird groesser  
    scroll();  
  }  
  else if ( ist_px < soll_px ) // nach links schieben  
  {  
    diff_px = -60; // margin wird kleiner  
    scroll();  
  }  
}  
function scroll() {  
  if ( ist_px != soll_px )  
  {  
    ist_px = ist_px -diff_px;  
    document.getElementById('px3600').style.marginLeft = ist_px +'px';  
    aktiv = window.setTimeout("scroll()", 50);  
  }  
  else  
  {  
    window.onmousedown = '';  
    return true;  
  }  
}  
</script>  

Gruß, Murmelin