“.scrollBottom()”不起作用

时间:2016-04-24 10:45:45

标签: jquery

我对jQuery的经验很少,有人可以解释一下我的代码有什么问题吗?

var scrollBottom = $(window).scrollTop() + $(window).height();

$(window).scroll(function(){
      if($(this).scrollTop() > 400) {
        $('.button').css({'display': 'none'});
       } else if ($(this).scrollBottom() > 200) {
        $('.button').css({'display': 'block'});
      }
    });

代码的第一部分,我希望按钮消失 - 工作,但不是函数的第二部分。

2 个答案:

答案 0 :(得分:2)

尝试检查本地变量scrollBottom

var scrollBottom = $(window).scrollTop() + $(window).height();

$(window).scroll(function(){
      if($(this).scrollTop() > 400) {
        $('.button').css({'display': 'none'});
       } else if (scrollBottom  > 200) {
        $('.button').css({'display': 'block'});
      }
    });

jQuery没有scrollBottom()函数。

答案 1 :(得分:2)

这只会创建一个变量,而不是定义一个函数!

  

var scrollBottom = $(window).scrollTop()+ $(window).height();

为简单起见,您可以这样做 -

$(window).scroll(function(){
  var scrollTop = $(window).scrollTop();
  var scrollBottom = $(window).scrollTop() + $(window).height();

  if(scrollTop() > 400) {
    $('.button').css({'display': 'none'});
   } else if (scrollBottom > 200) {
    $('.button').css({'display': 'block'});
  }
});

哦,你可以用 $(' .button')。show()/ $(' .button')。hide()代替设置.css()。