Frage

Ich versuche, das JCarousellite -Plugin bei der Größenänderung des Fensters neu einzustellen oder zu zerstören und erneut anzuwenden, aber ich habe keinen Erfolg. Dies liegt daran, dass ich eine Website erstellt habe Diese 'Seite' ...

Ich habe es versucht, dies in der Größenänderung zu verwenden und den Jcarousellit erneut anzuwenden, aber es hat nicht funktioniert:

$('#mega').jCarouselLite = null;

Dies ist der Code, den ich benutze, aber wenn ich den Jcarousellit immer wieder anwende, wird das Karussell verrückt!

$(document).ready(function(){
    w = $(window).width();
    h = $(window).height();
    $('#mega li').css('width',w);
    $('#mega li').css('height',h);
    $('#mega').jCarouselLite({
        circular:false,
        vertical:true,
        speed:1000,
        visible:1,
        btnGo:["#home", "#comofunciona", "#porquemegafome", "#contato"]
    });
});
$(window).resize(function() {
    w = $(window).width();
    h = $(window).height();
    $('#mega li').css('width',w);
    $('#mega li').css('height',h);
    $('#mega').jCarouselLite({
        circular:false,
        vertical:true,
        speed:1000,
        visible:1,
        btnGo:["#home", "#comofunciona", "#porquemegafome", "#contato"]
    });
});

LÖSUNG:

"Idrumgood", ich habe versucht, dies nur mit "Li" zu tun, aber ich habe ein wenig mehr über die Deaktivierung von Plugins gesucht. Ich stellte fest, dass ich auch die Klicks entbinden muss. Hier ist der Code, den ich bewerben musste:

$(window).resize(function() {
    $('#mega').jCarouselLite = null;
    $('#home, #comofunciona, #porquemegafome, #contato').unbind('click'); //buttons I defined on btnGo option
    runCarousel(); //again
    aClick(); // function where I get the li index and save into a hidden input, on resize it keeps li position! :)
});
War es hilfreich?

Lösung

Jcarousellite (und so ziemlich jedes Karussell -Plugin) verleiht beim Erstellen des Karussells ein zusätzliches Aufschlag. Normalerweise ein enthaltendes Element, das mit einer Breite von festgelegt ist elementsWidth * numberOfElements mit dem Überlauf versteckt. Ein zweites Element, das darin enthält, wird ebenfalls erstellt, und das wird sich tatsächlich bewegen. Dann werden Ihre Elemente schwebend und der linke Rand des sekundären enthaltenden Elements wird geändert, um den Scrolling -Effekt zu erzielen.

Wenn Sie dies ändern möchten, müssen Sie die Breiten derjenigen ändern, die Divs und/oder die Breite der Elemente enthalten, durch die Sie scrollen, wenn sich das Fenster ändert.

Versuchen Sie, die Größen dieser Elemente in der Fenstergröße zu ändern, anstatt das Karussell neu zu initialisieren und zu sehen, was passiert (ohne Ihr Markup, das ist der beste Rat, den ich geben kann).

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top