2014-02-09 5 views
6

Ich verwende Jquery mCustomScrollBar Plugin zum Erstellen von benutzerdefinierten Bildlaufleisten in meinem Projekt. Aber ich möchte keine Bildlaufleisten in meinen Webseiten haben, sobald sie unter 650 verkleinert sind. Es gibt auch ein anderes Problem, wenn ich das Fenster neu sortiere, kommen mehrere Scrollbalken. Kann mir bitte jemand zeigen, wie ich diese beiden Probleme lösen kann? Danke im Voraus .Wie mCustomscrollbar entfernen?

+0

hat mein Beitrag Ihre Frage beantwortet? – dchayka

Antwort

12

Wenn Sie einen benutzerdefinierten Bildlauf durch eine JavaScript-Funktion aufrufen, sollte die erste Zeile des Codes alle benutzerdefinierten Bildlaufleisten löschen.

$(selector).mCustomScrollbar('destroy'); 

dann Ihre individuelle Scrollbar auf den gleichen Wähler initialisieren

$(selector).mCustomScrollbar({ your options here }); 

Ganz am Ende müssen Sie nur noch ein Fenster resize() Zuhörer erstellen und Bedingungen zu schaffen, auf der Fenstergröße basiert.

Teilfunktion Beispiel:

function initCustomScrollbar() { 
    var $selector = $(selector); 
    $selector.mCustomScrollBar('destroy'); 
    $selector.mCustomSCrollbar({ yourOptionsHere }); 
    $(window).resize(function() { 
     if(window.innerWidth > 1000) { 
      initCustomScrollbar(); 
     } else { 
      $selector.mCustomScrollBar('destroy'); 
     } 
    }); 

Ich habe ein funktionierendes Beispiel, aber ich habe den Code oben nicht testen, erhalten Sie zwar die Idee.

+0

$ (selector) .mCustomScrollbar ('destroy'); gibt mir einen Fehler: Uncaught TypeError: Kann die Eigenschaft 'autoUpdate' von undefined nicht lesen – aleXela

+0

@aleXela 'selector' ist das Element, das Sie mit jQuery umbrechen möchten. Informationen dazu finden Sie unter https://api.jquery.com/id-selector/. – dchayka

+0

Ich weiß, danke) Selektor ist nur ein Beispiel. meins ist anders. aber immer noch – aleXela