2016-11-26 17 views
1

Я хочу функцию jQuery, которая удаляет вертикальную полосу прокрутки, пока страница не будет полностью загружена, но она, похоже, не работает. Любое понимание проблемы было бы здорово. Благодаря!Функция jQuery .onload для удаления полосы прокрутки до загрузки страницы Не работает

$(window).on('load', function() {  
    $('body').addClass('stop-scrolling'); 
    $('body').removeClass('stop-scrolling'); 
}); 
.stop-scrolling { 
    height: 100%; 
    overflow: hidden; 
} 

ответ

2

Проблема здесь в том, что ваш JS не работает до после страницы завершения загрузки. Это означает, что полоса прокрутки отображается в течение всего времени загрузки страницы. Затем, как только страница загружается, вы добавляете класс прокрутки остановки, а затем, через миллисекунды позже, вы удаляете его снова. Конечным результатом этого является то, что ничего не происходит.

Чтобы добиться того, что вам нужно, поставить .stop-scrolling класс непосредственно в HTML-код страницы, на <body> элемент, а затем только удалить его в обработчик события window.load.

+0

Спасибо, что сейчас работает! Не могу поверить, что я пропустил это. –