jquery窗口滚动事件无法正常工作,溢出-x隐藏

时间:2016-06-10 01:06:36

标签: javascript jquery html css

我正在使用此代码向导航栏添加一些动画

    $(window).on("scroll", function () {
    if ($(this).scrollTop() > 20) {
        $('.top-menu .navbar').removeClass('remove-nav-move');
        $('.top-menu .navbar').addClass('nav-move');
    } else {
        $('.top-menu .navbar').removeClass('nav-move');
        $('.top-menu .navbar').addClass('remove-nav-move');
    }
});

然后我添加了一些css

html , body  {
    overflow-x: hidden;
}

.full-width-bar {
    margin: 0 -9999rem;
    /* add back negative margin value */
    padding: 0.25rem 9999rem;
    background: rgba(0, 0, 0, 0.5);
}

并且身体上的overflow-x: hidden;会破坏窗口滚动,所以请任何帮助来解决此问题或任何其他方法来做到这一点并提前多多感谢

1 个答案:

答案 0 :(得分:0)

我没有为此找到任何解决方案,所以我删除overflow-x但在此之前我尝试过,我带来的最好的事情是

  var up_wind = 0;

$(window).bind("mousewheel DOMMouseScroll wheel", function (event, delta) {
     console.log(delta);
    if (delta>= 0 && delta != "undefined") {
        if(up_wind != 0){
            up_wind--;
            console.log('Scroll up');
            console.log(up_wind);
        }
    }
    else if(delta != "undefined") {
     if(up_wind >= 0)
         up_wind++;

         console.log('Scroll down');
        console.log(up_wind);
    }

    if(up_wind > 1){
        $('.top-menu .navbar').removeClass('remove-nav-move');
        $('.top-menu .navbar').addClass('nav-move');
    } else {
        $('.top-menu .navbar').removeClass('nav-move');
        $('.top-menu .navbar').addClass('remove-nav-move');
    }
});
希望能有所帮助。