// Diese Routinen und Algorithmen sind urheberlich geschützt (c) von Reinhard Doberstein, Mannheim; info(at)reinhard-doberstein.de !
// This funktions are copyright (c) by Reinhard Doberstein, info(at)reinhard-doberstein.de !

// Infos zum scrollen: http://www.quirksmode.org/js/doctypes.html


// Funktioniert mit IE ab 5.0 bis 6.0
// mit Mozilla 1.75
// mit Firefox

// Funktioniert nicht mit IE vor 5.0 (also 4.0, 3.0)

current_scroll = -1;
ziel_scroll = -1;
timeintervall = 1;
StepByIntervall = 1;
StepByIntervallStart = 1;
Scroll_max = 15;

function to_next(wohin)
{

  if ( is_ie && is_major < 6) {
    current_scroll = document.body.scrollLeft
  } else {
    current_scroll = document.documentElement.scrollLeft
  }

  obj = document.getElementById(wohin);
  ziel_scroll = obj.offsetLeft;

  if ( current_scroll < ziel_scroll) {
	  StepByIntervall = StepByIntervallStart;
  } else {
	  StepByIntervall = -StepByIntervallStart;
  }

  window.setTimeout("scroll_to()",1);

} // function to_next(wohin)



function scroll_to()
{
  if ( is_ie && is_major < 6) {
    aktueller_scroll = document.body.scrollLeft
  } else {
    aktueller_scroll = document.documentElement.scrollLeft
  }

  weiter = 1
  StepByIntervall = StepByIntervall * 1.1;
  if (StepByIntervall > Scroll_max) {
    StepByIntervall = Scroll_max;
  }
  if ( aktueller_scroll == current_scroll ) {
    if ( aktueller_scroll < ziel_scroll) {
	    if ( aktueller_scroll + StepByIntervall > ziel_scroll ) {
	      weiter=0;
	      StepByIntervall = ziel_scroll - aktueller_scroll;
	    }
    } else {
	    if ( aktueller_scroll + StepByIntervall < ziel_scroll ) {
	      weiter=0;
	      StepByIntervall = ziel_scroll - aktueller_scroll;
	    }
    }
  	scrollBy(StepByIntervall,0);
	  if ( is_ie && is_major < 6) {
	    current_scroll = document.body.scrollLeft
	  } else {
	    current_scroll = document.documentElement.scrollLeft
	  }

    if ( current_scroll != aktueller_scroll + parseInt(StepByIntervall) ){
      weiter =0;
      // alert ("ende");
    }
    if ( weiter==1) {
    	window.setTimeout("scroll_to()", timeintervall);
    }
  } else {
    // Benutzer hat scroll veraendert -> abbruch
  }

} // function scroll_to()

