2010-03-14 11 views
9

Używam jcarousel do automatycznego przewijania niektórych obrazów. Chciałbym wiedzieć, jak sprawić, by były przewijane w jednym płynnym przewijaniu bez przerw i przerw.Jquery, Jcarousel gładkie nieskończone przewijanie

Obecnie trwa pauza, a następnie przewija ponownie. Jeśli nie wyrażam się jasno, zapytaj, a ja postaram się wyjaśnić trochę lepiej.

Jest to kod:

jQuery(document).ready(function() { 
    jQuery('#mycarousel').jcarousel({ 
     auto: 1, 
     wrap: 'last', 
     vertical: true, 
     animation: 5000 

    }); 
+0

Mój plugin jQuery, simplyScroll powinna osiągnąć co chcesz http://logicbox.net/jquery/simplyscroll/ – Logicbox

Odpowiedz

7

spróbować

auto: .01 

masz to zestaw do AutoScroll co 1 sekundę. Nie sądzę, że płynny zwój jest możliwy, ale to powinno wyglądać dokładnie tak samo.

+0

Dzięki za to. Zdecyduj się zrobić to w prosty sposób i użyj funkcji anime jquery. – nharry

+0

To zadziałało dla mnie oprócz ustawienia prędkości animacji na wyższą wartość (niż domyślna). Tak: 'animacji: 5000, auto: 0.01' – racl101

2

Dla mnie to przewija „gładsze” użyte liniowy łagodne zamiast huśtawka.

auto: .01, 
easing: 'linear' 
+0

' jQuery (document) .ready (function() { jQuery ('# mycarousel') jcarousel ({ auto. 0,1, przewijania: 10, okład: "okrągły", animacja: 10000, wygładzanie: "liniowy" }); }); '- luzowanie zrobiło różnicę – TomDunning

1
  • Otwartych jquery.jcarousel.min.js
  • upiększyć skrypt używając http://jsbeautifier.org
  • Znajdź i zamień "this.options.auto * 1E3" na "0" (zero)

Coś jak:

function mycarousel_initCallback(carousel){ 
    // Pause autoscrolling if the user moves with the cursor over the clip. 

    carousel.clip.hover(function() { 
     carousel.stopAuto(); 
    }, function() { 
     carousel.startAuto(); 
    }); 
}; 

jQuery(document).ready(function() { 

    jQuery('#mycarousel').jcarousel({ 
     auto: 1, 
     animation:2000, 
     easing: 'linear', 
     wrap: 'circular', 
     scroll:1, 
     buttonNextHTML: null, 
     buttonPrevHTML: null, 
     initCallback: mycarousel_initCallback 
    }); 
}); 

to wszystko. :)

5

To pytanie jest tak stare, jak brud, ale pomyślałem, że daję zaktualizowane rozwiązanie.

$('.jcarousel').jcarousel({ 
    wrap: 'circular', 
    animation: { 
     duration: 3000, 
     easing: 'linear', 
    } 
    }); 
    $('.jcarousel').jcarouselAutoscroll({ 
     interval: 0 
    }); 
+1

Najlepsza odpowiedź z nich wszystkich. – egr103

+0

To zadziałało dla mnie. – Kirtan

+0

Działa również dla mnie, ale co jeśli chcę bezpośrednio przejść do obrazu bez przejścia? Twoje rozwiązanie faktycznie "wyłącza" funkcję paginacji ... – Flaudre

Powiązane problemy