Функция прокрутки jQuery не работает

#javascript #jquery #wordpress #scroll

#javascript #jquery #wordpress #прокрутка

Вопрос:

У меня есть эта функция:

 $(document).ready(function() {
    if ($(".splash").is(":visible")) {
        $(".site").css({"opacity":"0"});
        }
    });

$(window).scroll(function(){
    $(window).off("scroll"); 
    $(".splash").slideUp("800", function() {
      $("html, body").animate({"scrollTop":"0px"},100);
      $(".site").delay(100).animate({"opacity":"1.0"},800);
    });
})
  

Я использую это для перехода с заставки на главную страницу анимационным способом. Но когда я нахожусь на домашней странице, прокрутка все еще выключена, и мне это нужно, чтобы внести изменения в заголовок hte. Я использую этот код:

 $(document).ready(function( $ ) {
    $(window).scroll(function() {
        var sT = $(this).scrollTop();
        if (sT >= 200) {
            $('header').addClass('scroll-header')
        } else {
            $('header').removeClass('scroll-header')
        }
    });
});
  

Эти две части сражаются вместе!! Как я могу включить прокрутку после заставки, чтобы выйти? Спасибо!

Комментарии:

1. Что значит «сражаться вместе»?

2. @SachiDangalla привет! первое добавление (window).off(«прокрутка») — после анимации окно все еще выключено, а (window).scroll(функция () заголовка не работает

3. $(window).off("scroll") удалит все scroll прослушиватели событий из $(window) . Вероятно, лучше использовать .one() для события прокрутки заставки.

4. да, это хорошая идея! Как я могу написать, например, $(window).scroll(function() { $(this).one(‘scroll’, function() { code } точно?

5. Привет, попробуйте это: $(window).ready(function(){ $(this).one(‘scroll’, function() { $(window).off(«scroll»); $(«.splash»).slideUp(«800», function(){ $(«html, body»).animate({«scrollTop»:»0px»},100); $(«. сайт»). задержка (100).анимировать({«непрозрачность»:»1.0″},800); }); }) }); Но все равно не сработает

Ответ №1:

В конце я попытался не использовать scroll off, а изменить с помощью простого

 .show_splash{position: fixed;}
  

Таким образом, отлично работает!!!