lt-blue-thunder 0 Melden Teilen Geschrieben 16. November 2007 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 More sharing options...
SpawnFromHell 0 Melden Teilen Geschrieben 16. November 2007 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 More sharing options...
lt-blue-thunder 0 Autor Melden Teilen Geschrieben 16. November 2007 Hab ich schon versucht, hat mir dann immer Fehler ausgeworfen :/ Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...