2012-03-01 4 views
0

так им с помощью jcarousel с:JQuery jcarousel с «круговой» конфигурации

 wrap:"circular", 
     itemFirstInCallback: { 
onBeforeAnimation: callback1, 
onAfterAnimation: callback2 
} 

то, что я хочу, чтобы иметь я инкрементора увеличивать или уменьшать, но в сжатой форме!

например, если длина карусели равна 10 (мы нажимаем следующую кнопку), когда i достигает 10, ее следующее значение должно быть 1 (как и сейчас на 1-й позиции карусели) другой пример : если мы нажимаем кнопку prev, и значение i равно 1, ее следующее значение должно быть 10 (так как мы сейчас находимся на последнем элементе карусели)

, так что я не мог иметь такое поведение, я пробовал это (используя onAfterAnimation callbak):

function callback2 (carousel, item, i, state){ 
     if(state=="next"){ 
     if(i==carousel.size()+1) { 
     i=1 
     } else{ 
     } 
      alert(i); 
     } 
       if(state=="prev"){ 
       if(i==0) { 
      i=carousel.size() 
     } 
      alert(i); 
     } 
} 

, но я до сих пор не получаю сжатый инкрементор/decrementor

ответ

0
if(i==carousel.size()+1) 

должен быть

if(i==carousel.size()-1) 

, поскольку вы используете на основе индекса на I 0 (основано на if(state==prev) if (i==0)

+0

carousel.size() начинается с 1, им просто пытается взломать карусель получить краткий инкремент/декремент – tetris

Смежные вопросы