Saskia: automatisch seitwärts scrollen statt nach oben und unten?

Beitrag lesen

Hallo allerseits,
ich habe gestern die halbe Nacht erfolglos versucht, das folgende script so umzuschreiben,
dass man mit dem Cursor nach rechts und links scrollen kann, anstelle auf- und abwärts.

Mittlerweile sehe ich vor lauter x und ypsilons schon gar nicht mehr, wo oben und unten ist ..
ist dies überhaupt möglich?
Vielleicht kann mir einer von euch einen Tipp geben, welche Variablen ich außer x, y und height
noch beachten muss. Ich vermute mal, mein Fehler liegt in den Zeilen // Dokumentposition ermitteln

Da wäre ich echt sehr sehr dankbar für.
Ach ja .. ich persönlich finde scrollbalken auch viel praktischer, aber meine Chefin will das andere ;)
Schönen Gruß

<SCRIPT LANGUAGE="JavaScript1.2" TYPE="text/javascript">
<!--

// Parameter
var sense1 = 10 // Sensibilitaetszone 1 (in %)
var sense2 = 5  // Sensibilitaetszone 2 (in %)
var speed1 = 1  // Scrollgeschwindigkeit in Zone 1
var speed2 = 5  // Scrollgeschwindigkeit in Zone 2
var stime  = 50 // Timer zum Scrollen

// Interne Variablen
var scrolling = false
var scrollfast
var richtung
var y_mem = -1
var myWin

// Scrolling anhalten
function stopp_scrolling()
{
  scrolling = false
  y_mem     = -1
}

// Scroll aktivieren und durchfuehren
function start_scrolling(initial)
{
  if(!scrolling)
    return

// Dokumentposition ermitteln
  var dy = (myWin.pageYOffset != null) ? myWin.pageYOffset : myWin.document.body.scrollTop
  if((y_mem != dy) && !initial)
    return
  var dx = (myWin.pageXOffset != null) ? myWin.pageXOffset : myWin.document.body.scrollLeft
  dy += richtung * (scrollfast ? speed2 : speed1)

// Scrollen
  myWin.scrollTo(dx, dy)
  y_mem = dy

// Funktion erneut aufrufen
  setTimeout("start_scrolling(false)", stime)
}

// Auswertung der Mausposition
function zeige(e)
{
  // Mausposition und Dokumentdaten
  var y = myWin.Event ? e.pageY : myWin.event.clientY
  if(myWin.Event)
    y -= - (myWin.pageYOffset != null) ? myWin.pageYOffset : myWin.document.body.scrollTop
  var wh = myWin.innerHeight ? myWin.innerHeight : myWin.document.body.clientHeight
  var dh = myWin.document.height ? myWin.document.height : myWin.document.body.scrollHeight

// Zwischenvariablen
  var s1 = Math.round(wh * sense1 / 100)
  var s2 = Math.round(wh * sense2 / 100)
  var now_scroll

// Scrollnotwendigkeit ermitteln
  if((y < s1) || (y > (wh - s1)))
  {
    now_scroll = true
    richtung   = (y < s1) ? -1 : 1
    scrollfast = ((y < s2) || (y > (wh - s2))) ? true : false
  }
  else
  {
    now_scroll = false
    scrolling  = false
  }

// Scrollstatus geaendert?
  if(now_scroll != scrolling)
  {
    y_mem     = -1
    scrolling = now_scroll
    if(scrolling)
      start_scrolling(true)
  }
}

// Mauskontrolle initiieren
function init()
{
  myWin = window

if(myWin.Event)
    myWin.document.captureEvents(Event.MOUSEMOVE)

myWin.document.onmousemove = zeige
}

//-->
</SCRIPT>

<BODY ... onLoad="init()" onBlur="stopp_scrolling()">