Zum Inhalt springen
lt-blue-thunder

Java-Guru gesucht.. brauche dringend Hilfe

Empfohlene Beiträge

Hab folg. Problem... progge an ner Website die ..ich nenns mal .. wie ein Adventskalender funktioniert. Ein großes Bild und auf dem sind weitere Bilder hinter denen sich Links verstecken. Das Scrollen sollte ohne Scrollbars gehen, das Fenster bewegt sich mit dem Mauszeiger. Ich selber bin kein Java-Progger und hab deshalb per google einen nützlichen Code gesucht... leider ist das Problem, dass es 2 scripte sind, die total identisch aufgebaut wurden, eines zum links nach rechts scrollen, eines zum rauf und runter. Leider sind beide zusammen nciht möglich, da die selben Funktionen usw. verwendet wurden. Ein Script allein geht, sind beide aufgerufen steht alles.

Ich hoffe mir kann jemand weiterhelfen und aus den 2 Scripten eines machen, das funkioniert :(

Hier das Script fürs Rauf/Runter:

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 autoscroll()

{

myWin = window

if(myWin.Event)

myWin.document.captureEvents(Event.MOUSEMOVE)

myWin.document.onmousemove = zeige

}

//-->

Und hier für links anch rechts:

<script language="JavaScript"><!--

// Parameter

var sense1 = 10 // Sensibilitaetszone 1 (in %)

var sense2 = 5 // Sensibilitaetszone 2 (in %)

var speed1 = 5 // Scrollgeschwindigkeit in Zone 1

var speed2 = 10 // Scrollgeschwindigkeit in Zone 2

var stime = 50 // Timer zum Scrollen

// Interne Variablen

var scrollfast, richtung, myWin, x_mem = -1, scrolling = false;

// Mauskontrolle initiieren

function autoscroll()

{

myWin = window

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

myWin.document.onmousemove = zeige

}

// Auswertung der Mausposition

function zeige(e) {

// Mausposition und Dokumentdaten

var x = myWin.Event ? e.pageX: myWin.event.clientX

if (myWin.Event) x += (myWind.pageXOffset != null) ? myWin.pageXOffset : myWin.document.body.scrollLeft

var ww = myWin.innerWidth ? myWin.innerWidth : document.body.offsetWidth

// Zwischenvariablen

var s1 = Math.round(ww * sense1 / 100)

var s2 = Math.round(ww * sense2 / 100)

var now_scroll

// Scrollnotwendigkeit ermitteln

if((x < s1) || (x > (ww - s1))) {

now_scroll = true

richtung = (x < s1) ? -1 : 1

scrollfast = ((x < s2) || (x > (ww - s2))) ? true : false

}

else {

now_scroll = false

scrolling = false

}

// Scrollstatus geaendert?

if(now_scroll != scrolling) {

x_mem = -1

scrolling = now_scroll

if(scrolling) start_scrolling(true)

}

}

// Scroll aktivieren und durchfuehren

function start_scrolling(initial) {

if(!scrolling) return

// Dokumentposition ermitteln

var dy = (myWin.pageYOffset != null) ? myWin.pageYOffset : myWin.document.body.scrollTop

var dx = (myWin.pageXOffset != null) ? myWin.pageXOffset : myWin.document.body.scrollLeft

if ((x_mem != dx) && !initial) return

dx += richtung * (scrollfast ? speed2 : speed1)

// Scrollen

myWin.scrollTo(dx, dy)

x_mem = dx

// Funktion erneut aufrufen

setTimeout("start_scrolling(false)", stime)

}

// Scrolling anhalten

function stopp_scrolling()

{

scrolling = false

x_mem = -1

}

//--></script>

Link zu diesem Kommentar
Auf anderen Seiten teilen

hab mal n bisschen rumgesucht, aber nix gefunden

http://www.dynamicdrive.com

hier gibts ne menge von so nem kram. Unter anderem auch deine beiden Scripte.

Prizipiell gibts nur 2 Dinge zu tun.

in den beiden scripten werden wahrscheinlich gleiche variablennamen verwendet. bei einem script solltest du diese anpassen.

z.b. aus

var scrollfast
wird dann
var irgenwas_scrollfast

das gleiche gilt für Methoden (bzw. Funktionen). Diese müssen auch unterschiedlich heißen.

hier kannst du das selbe machen, wie bei den variablen.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden


  • Wer ist Online   0 Benutzer

    • Keine registrierten Benutzer online.
×
×
  • Neu erstellen...

Wichtige Information

Wir haben Cookies auf Deinem Gerät platziert. Das hilft uns diese Webseite zu verbessern. Du kannst die Cookie-Einstellungen anpassen, andernfalls gehen wir davon aus, dass Du damit einverstanden bist, weiterzumachen.