Moin liebe Gemeinde,
ich bastel derzeit nen bissle mit Javascript rum und habe mir ein kleines Script gebastelt, mit der ich eine kleine Gallery steuern kann.
Dieses Script ist natürlich noch nicht optimiert, weil ich halt an einer Stelle gerade noch feststecke: Wenn ich zB. einfach mal 4, 5mal Klicke oder zb. 'nen MouseWheel Controller mit einbinde, kommt es zu dem Problem das das Script in der Funktion fading() hängen bleibt. Sprich: Das Bild wird zwar gewechselt, aber er schleift durchgehend das Faden an sich durch.
Nun die Frage: Wie kann ich das Unterbinden? So das quasi nur 1 Event zugelassen wird, und alles andere Ignoriert wird, bis man das Event beendet ist. Oder aber: wie man die Schleife zum Faden, sicher nach beenden stopen kann.
Hier einmal das Script (leicht umgebrochen, damit es die Seite nicht sprengt!):
Beste Grüße,
Jon
ich bastel derzeit nen bissle mit Javascript rum und habe mir ein kleines Script gebastelt, mit der ich eine kleine Gallery steuern kann.
Dieses Script ist natürlich noch nicht optimiert, weil ich halt an einer Stelle gerade noch feststecke: Wenn ich zB. einfach mal 4, 5mal Klicke oder zb. 'nen MouseWheel Controller mit einbinde, kommt es zu dem Problem das das Script in der Funktion fading() hängen bleibt. Sprich: Das Bild wird zwar gewechselt, aber er schleift durchgehend das Faden an sich durch.
Nun die Frage: Wie kann ich das Unterbinden? So das quasi nur 1 Event zugelassen wird, und alles andere Ignoriert wird, bis man das Event beendet ist. Oder aber: wie man die Schleife zum Faden, sicher nach beenden stopen kann.
Hier einmal das Script (leicht umgebrochen, damit es die Seite nicht sprengt!):
Code:
// Vordefinierte Vars var img = new Array, project = new Array, page = new Array, currentImage = 0, i = 1, j = 0, k = 100, active ; // Datensaetze img[0] = './images/projekt/01/1.jpg' ; img[1] = './images/projekt/02/1.jpg' ; img[2] = './images/projekt/03/1.jpg' ; project[0] = 'Projekt 1' ; project[1] = 'Projekt 2' ; project[2] = 'Projekt 3' ; page[0] = 'projekt_1.html' ; page[1] = 'projekt_2.html' ; page[2] = 'projekt_3.html' ; // Fading function fading() { if (j == 0) { i = i-0.1; k = k-10 ; if (i <= 0.1) { j = 1 ; document.getElementById('galleryimage1').src = img[currentImage] ; } } else { i = i+0.1 ; k = k+10 ; if (i >= 0.9) { window.clearInterval(aktiv); i= 1 ; k= 100 ; j = 0 ; } } document.getElementById('image').style.opacity = i ; document.getElementById('image').style.filter = 'alpha(opacity=' + k + ')' ; } // Ansteuerung function gallery(param) { if (param == 'next') { if (currentImage == (img.length-1)) { currentImage = 0 ; } else { currentImage++ ; } } if (param == 'prev') { if (currentImage == 0) { currentImage = (img.length-1) ; } else { currentImage-- ; } } document.getElementById('headline').innerHTML = project[currentImage] ; document.getElementById('goto').href = page[currentImage] ; aktiv = window.setInterval('fading()', 1); }
Jon
Kommentar