Наложение полос прокрутки - не удается запустить метод destroy () - PullRequest
0 голосов
/ 31 марта 2019

Я использую OverlayScrollbars на моем веб-сайте (https://github.com/KingSora/OverlayScrollbars), чтобы отобразить пользовательскую полосу прокрутки в каждом из моих разделов.

Из соображений дизайна я хочу использовать эту пользовательскую полосу прокрутки только для экранов с шириной выше 1200 пикселей.

Я прочитал в документации о методе destroy (), который будет делать именно то, что я хочу достичь: убрать Dom любого стиля из пользовательской полосы прокрутки (для меня, когда экран становится меньше, чем 1200 px в ширину).

Когда я использую метод destroy (), моя консоль возвращает мне следующую ошибку:

Uncaught TypeError: instance.destroy не является функцией

Я довольно новичок в JavaScript, поэтому я пробовал разные синтаксисы, но всегда заканчивался одной и той же ошибкой.

$ (документ) .ready (function () { var $ window = $ (window);

function checkWidth() {
    var windowsize = $window.width();
    if (windowsize >= 1200) {
        //if the window is bigger 1200px wide then turn on ScrollBar..
      $(function() {
        var instance = OverlayScrollbars(document.querySelectorAll("section"), { });
      });
    }
    else if (windowsize < 1200) {
        //if the window is smaller than 440px wide then destroy ScrollBar..
      $(function() {
        var instance = OverlayScrollbars(document.querySelectorAll("section"), { });
        instance.destroy();
      });
    }
}
checkWidth();
$(window).resize(checkWidth);

});

1 Ответ

0 голосов
/ 04 апреля 2019

попробуйте использовать

var instance =$ ( '.section' ).overlayScrollbars ( { ... } ).overlayScrollbars()
instance.destroy()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...