首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >jquery:$(window).scrollTop(),但没有$(window).scrollBottom()

jquery:$(window).scrollTop(),但没有$(window).scrollBottom()
EN

Stack Overflow用户
提问于 2011-01-11 15:41:14
回答 13查看 239K关注 0票数 90

每当用户滚动页面时,我希望在页面底部放置一个元素。它类似于“固定位置”,但我不能使用“位置:固定”css,因为我的许多客户的浏览器都不支持它。

我注意到jquery可以获取当前视区的顶部位置,但是如何获取滚动视区的底部呢?

所以我在问如何知道:$(window).scrollBottom()

EN

回答 13

Stack Overflow用户

回答已采纳

发布于 2011-01-11 15:47:11

var scrollBottom = $(window).scrollTop() + $(window).height();
票数 156
EN

Stack Overflow用户

发布于 2011-05-03 22:03:42

我想说,作为scrollTop的直接对立面,scrollBottom应该是:

var scrollBottom = $(document).height() - $(window).height() - $(window).scrollTop();

这是一个对我有效的小而难看的测试:

// SCROLLTESTER START //
$('<h1 id="st" style="position: fixed; right: 25px; bottom: 25px;"></h1>').insertAfter('body');

$(window).scroll(function () {
  var st = $(window).scrollTop();
  var scrollBottom = $(document).height() - $(window).height() - $(window).scrollTop();

  $('#st').replaceWith('<h1 id="st" style="position: fixed; right: 25px; bottom: 25px;">scrollTop: ' + st + '<br>scrollBottom: ' + scrollBottom + '</h1>');
});
// SCROLLTESTER END //
票数 91
EN

Stack Overflow用户

发布于 2015-05-08 23:04:08

将来,我已经将scrollBottom变成了一个jquery插件,它的使用方式与scrollTop相同(即,您可以设置一个数字,它将从页面底部滚动该数量,并从页面底部返回像素数,或者,如果没有提供数字,则从页面底部返回像素数)。

$.fn.scrollBottom = function(scroll){
  if(typeof scroll === 'number'){
    window.scrollTo(0,$(document).height() - $(window).height() - scroll);
    return $(document).height() - $(window).height() - scroll;
  } else {
    return $(document).height() - $(window).height() - $(window).scrollTop();
  }
}
//Basic Usage
$(window).scrollBottom(500);
票数 9
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4655273

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档