sverebom
Vice Admiral
- Registriert
- Aug. 2004
- Beiträge
- 6.635
Hallo,
ich bastel mir gerade mit JavaScript und Jquery eine einfache Galerie für meine Website. Da die Webseite aus nur einer Übersichts-Seite besteht, auf der mit "scrollTo" hin und her scrolle, und ich die inflationäre Verwendung von IDs vermeiden möchte, erfasse ich einfach mit jquery, welche Link in welcher Übersicht (jeweils eine Liste) geklickt wurde, um zu dem Element zu gelangen, das ich anzeigen möchte. Funktioniert soweit wunderbar, ich kann ausgehend von dem Link, der geklickt wurde, jeden gewünschten Inhalt aus einer weiteren Datei abrufen und anzeigen lassen.
Ich bin nun an der Stelle, an der ich mit "Vor" und "Zurück" durch die Bilder rotieren möchte. Dazu hole ich mir den Index des aktuellen Bildes als Startwert (check!) und verändere diesen Wert mit Klicks auf "Vor" oder "Zurück", um zu bestimmen, was geladen werden soll. Der Veteran hat sich schon erraten, was mein Problem ist: Ich muss diese Veränderung an dem Index-Wert nun irgendwie speichern und verfügbar halten, damit beim nächsten Klick auf "Vor" oder "Zurück" der Index des aktuelles Bildes als Referenz verwendet wird und nicht der Index, den ich beim initialen Aufruf übergeben habe.
Wenn ich also den Index "5" übergebe und ich treudoof eine einfache if-Anweisung schreibe (if "Link vor" dann Index++), dann kriege ich zwar beim ersten Klick auf "Vor" korrekterweise den Index "6", aber beim nächsten Klick auf "Vor", beginnt das Spielchen nicht mit dem Index "6" sondern wieder mit der übergebenen "5".
Ich nehme an, dass ich an der Stelle mit mehreren Funktionen arbeiten muss, von der mir eine einen neuen Index (stets den des aktuellen Bildes) ausspucken muss, aber ich weiß nicht so recht, wie ich das anfangen soll. Die vielen Codebeispiele und Erläuterungen im Web haben mich auch noch nicht zum Ziel geführt. Im Grunde brauche ich also vor allem jemanden, der mich ein wenig durch den Dschungel führt, während ich mir eine Lösung erarbeite.
Ich hoffe, dass ihr auch Kommentare erkennt, was da passiert. Im Moment, in der Testumgebung, spucke ich nur Variablen im HTML-Code aus, um zu testen, ob der Code die richtigen Variablen liefert.
P.S.: Ich bastele gleich auch mal schnell ein Sample in jfiddle zusammen und stelle es bereit.
ich bastel mir gerade mit JavaScript und Jquery eine einfache Galerie für meine Website. Da die Webseite aus nur einer Übersichts-Seite besteht, auf der mit "scrollTo" hin und her scrolle, und ich die inflationäre Verwendung von IDs vermeiden möchte, erfasse ich einfach mit jquery, welche Link in welcher Übersicht (jeweils eine Liste) geklickt wurde, um zu dem Element zu gelangen, das ich anzeigen möchte. Funktioniert soweit wunderbar, ich kann ausgehend von dem Link, der geklickt wurde, jeden gewünschten Inhalt aus einer weiteren Datei abrufen und anzeigen lassen.
Ich bin nun an der Stelle, an der ich mit "Vor" und "Zurück" durch die Bilder rotieren möchte. Dazu hole ich mir den Index des aktuellen Bildes als Startwert (check!) und verändere diesen Wert mit Klicks auf "Vor" oder "Zurück", um zu bestimmen, was geladen werden soll. Der Veteran hat sich schon erraten, was mein Problem ist: Ich muss diese Veränderung an dem Index-Wert nun irgendwie speichern und verfügbar halten, damit beim nächsten Klick auf "Vor" oder "Zurück" der Index des aktuelles Bildes als Referenz verwendet wird und nicht der Index, den ich beim initialen Aufruf übergeben habe.
Wenn ich also den Index "5" übergebe und ich treudoof eine einfache if-Anweisung schreibe (if "Link vor" dann Index++), dann kriege ich zwar beim ersten Klick auf "Vor" korrekterweise den Index "6", aber beim nächsten Klick auf "Vor", beginnt das Spielchen nicht mit dem Index "6" sondern wieder mit der übergebenen "5".
Ich nehme an, dass ich an der Stelle mit mehreren Funktionen arbeiten muss, von der mir eine einen neuen Index (stets den des aktuellen Bildes) ausspucken muss, aber ich weiß nicht so recht, wie ich das anfangen soll. Die vielen Codebeispiele und Erläuterungen im Web haben mich auch noch nicht zum Ziel geführt. Im Grunde brauche ich also vor allem jemanden, der mich ein wenig durch den Dschungel führt, während ich mir eine Lösung erarbeite.
Code:
$(document).ready( function() {
$('div').scrollTo( 0 );
$.scrollTo( 0 );
$('#gal_menu a').click( function() {
var indexItem = $(this).index();
$('#items').data('indexItem', indexItem);
$('#inform2').text(indexItem);
$('#item').load('sample.html p:eq(' + indexItem + ')');
})
$('#item_menu a').click( function() {
var indexClick = $(this).index();
var indexItem = $('#items').data('indexItem', indexItem);
Hier irgendwo muss wohl das geschehen, an dem ich im Moment scheitere
$('#inform3').text(indexItem);
});
});
P.S.: Ich bastele gleich auch mal schnell ein Sample in jfiddle zusammen und stelle es bereit.