Jquery 元素在用户向下滚动页面时出现和消失

Jquery 元素在用户向下滚动页面时出现和消失,jquery,Jquery,我使用这种代码: $(document).ready( function DocumentLoad() { $(window).scroll(scrollBtn); scrollBtn(); }); function scrollBtn(){ if ( $(window).scrollTop() > 150 ) $('.scroll-btn:hidden').fadeIn('slow'); el

我使用这种代码:

$(document).ready(
  function DocumentLoad()
  {    
    $(window).scroll(scrollBtn);
    scrollBtn();      
  });

 function scrollBtn(){  
    if ( $(window).scrollTop() > 150 )
         $('.scroll-btn:hidden').fadeIn('slow');
       else
         $('.scroll-btn:visible').fadeOut('slow');         
 }  
使用

我要展示的内容


它在用户向下滚动页面时显示一个元素。我想用一种方式来扩展它,当页面末尾之前仍有350px的高度时,div-scroll-btn就会消失(我的页脚有350px的高度,所以我想在div-scroll-btn到达之前将其消失。

这应该可以为您提供技巧:

根据您的要求从底部调整
px

$(window).scroll(function() {
    var pxFromBottom = 350;
    if ($(window).scrollTop() + $(window).height() > $(document).height() - pxFromBottom) {
        $('.scroll-btn').fadeOut('slow');
    } else {
        $('.scroll-btn').fadeIn('slow')
    }
});

非常感谢,它可以工作。但我刚刚发现,当我向后滚动页面顶部时,元素仍然可见,并且没有消失:/n只需切换if-else语句。基本逻辑就在那里。请你展示一下,好吗?我不是js专家,我尝试了几个选项,但对我不起作用:/n只需删除else语句或这一行即可$('.scroll btn').fadeIn('slow')则它将不再出现