MarsVolta
Threadersteller
Dabei seit: 17.12.2007
Ort: Wuppertal
Alter: 37
Geschlecht:
|
Verfasst Di 22.03.2011 20:37
Titel Kurze Hilfe: Wie füge ich einen Loop ein? |
 |
|
Hallo zusammen,
ich habe eine kurze Frage... zumindest ist sie in meinen Augen kurz
Ich habe ein Script für eine Bildergalerie...
Was muss ich dort einfügen an Code, dass sich nach durchklicken der Bilder die Slideshow wieder von vorn beginnt?
Hier der Code:
Code: | var gal_array = {};
function galerie_init(id, width, max) {
gal_array[id] = {width: width, max: max, pos: 0, target: 0};
}
function galerie_setpos(id, pos) {
gal_array[id].target = pos;
}
function galerie_next(id) {
if (gal_array[id].target+1 < gal_array[id].max)
gal_array[id].target++;
}
function galerie_prev(id) {
if (gal_array[id].target-1 >= 0)
gal_array[id].target--;
}
function _galerie_step() {
for (var id in gal_array) {
var targetpos = -gal_array[id].target*gal_array[id].width
if (targetpos != gal_array[id].pos) {
if (Math.abs(targetpos-gal_array[id].pos)<50) {
document.getElementById(id).style.left = targetpos+'px';
gal_array[id].pos = targetpos;
}
else {
var nextpos = 0;
if (targetpos < gal_array[id].pos)
nextpos = gal_array[id].pos-50;
else
nextpos = gal_array[id].pos+50;
document.getElementById(id).style.left = nextpos+'px';
gal_array[id].pos = nextpos;
}
}
}
}
function _galerie_init() {
window.setInterval(_galerie_step, 30);
}
window.setTimeout(_galerie_init, 900); |
Die dazu gehörige Galerie findet ihr hier:
www.heim-art.net/kamo/Impressionen.html
Danköööö
Zuletzt bearbeitet von MarsVolta am Di 22.03.2011 20:40, insgesamt 3-mal bearbeitet
|
|
trashmaster
Dabei seit: 20.01.2010
Ort: -
Alter: -
Geschlecht: -
|
Verfasst Mi 23.03.2011 10:25
Titel Re: Kurze Hilfe: Wie füge ich einen Loop ein? |
 |
|
Du hast ja zwei Funktionen next und prev, diese musst du eigentlich nur um die entsprechenden Abfragen (die du sogar schon hast) ergänzen.
Wenn target+1 > max ist, setze target auf 0,
und wenn target-1 < 0 ist, setze target auf max.
Code: | function galerie_next(id) {
if (gal_array[id].target+1 < gal_array[id].max) {
gal_array[id].target++;
} else {
gal_array[id].target = 0;
}
}
function galerie_prev(id) {
if (gal_array[id].target-1 >= 0) {
gal_array[id].target--;
} else {
gal_array[id].target = gal_array[id].max;
}
}
|
Zuletzt bearbeitet von trashmaster am Mi 23.03.2011 10:26, insgesamt 1-mal bearbeitet
|
|