Загрузить nicescroll, прежде чем html загрузит полосу прокрутки браузера по умолчанию

Я использую очень полезный плагин полосы прокрутки, который называется nicescroll.

Этот плагин требует времени для загрузки, так как я уже использую много jquery в своем проекте.

Можно ли каким-то образом скрыть полосу прокрутки по умолчанию в браузере, пока скрипт не загрузится, и тогда скрипт выполнит свою работу и появится новая полоса прокрутки?

Я использую этот код для инициализации плагина:

$(document).ready(function() {
    var nice = $('html').niceScroll({
        cursorborder: "",
        cursorcolor: "#333333",
        cursorwidth: "12px"
    });
});

2 ответа

Решение

Вы могли бы сделать что-то вроде этого:

// Hide Overflow of Body on DOM Ready //
$(document).ready(function(){
    $("body").css("overflow", "hidden");
});

// Show Overflow of Body when Everything has Loaded //
$(window).load(function(){
    $("body").css("overflow", "auto");        
    var nice=$('html').niceScroll({cursorborder:"",cursorcolor:"#333333",cursorwidth:"12px"});
});

Демо Здесь

Надеюсь, это поможет!

Может быть, это лучший вариант для добавления прямо на ваш CSS.

body {
    overflow: hidden;
}

И тогда в jQuery:

$( function() {
    // activate niceScroll
});
Другие вопросы по тегам