Ho sviluppato un codice FBJS per una fan page di facebook sfruttando del codice già scritto per creare un carosello di immagini.
Il problema principale di questo carosello di immagini è che se un utente multiclicca in continuazione il tasto avanti o indietro, lo script perde il passo corretto di pixel che sono necessari per visualizzare correttamente le varie slide.
Siccome non sono molto esperto di javascript mi chiedevo se, e in che modo è possibile far si che i bottoni avanti ed indietro non possano generare più di un evento ogni tot secondi.
(sempre che questa funzione sia implementabile in FBJS).
Vi ringrazio in anticipo.
codice:
var numslides = 6; /*numero di scorrimenti che intendo ottenere*/
var slidesvisible = 1; /* numero di slide da mostrare per volta */
var currentslide = 0; /* slide corrente */
var slidewidth = 456; /* dimensione in pixel della slide*/
function goright() {
if (currentslide <= (numslides-slidesvisible-1)) { Animation(document.getElementById('slideshow_inner')).by('right', slidewidth+'px').by('left', '-'+slidewidth+'px').go(); if (currentslide == (numslides-slidesvisible-1)) {
Animation(document.getElementById('right_button')).to('opacity', '0.3').go();
Animation(document.getElementById('left_button')).to('opacity', '1').go();
}
if (currentslide < (numslides-slidesvisible-1)) {
Animation(document.getElementById('left_button')).to('opacity', '1').go();
}
currentslide++;
}
}
function goleft() {
if (currentslide > 0) {
Animation(document.getElementById('slideshow_inner')).by('left', slidewidth+'px').by('right', '-'+slidewidth+'px').go();
if (currentslide == 1) {
Animation(document.getElementById('left_button')).to('opacity', '0.3').go();
Animation(document.getElementById('right_button')).to('opacity', '1').go(); } if (currentslide > 1) {
Animation(document.getElementById('right_button')).to('opacity', '1').go();
}
currentslide--;
}
}