相对于可滚动页面上的垂直位置移动div

时间:2017-04-09 09:10:14

标签: javascript jquery html css

想象一下,我的网站溢出了视口高度的三倍。我可以从上到下滚动这个网站。

是否可以创建一个div,该div从视口顶部移动到相对于已滚动的总页面数量的底部?

示例 - 有人会介意帮助我实现像this这样的事情吗?不知道是怎么做的。

编辑:

    var scrollValue;
    var percent; 

    var body = document.body,
        html = document.documentElement;

    var height = Math.max( body.scrollHeight, body.offsetHeight, 
    html.clientHeight, html.scrollHeight, html.offsetHeight );

    $(document).ready(function(){
        $("button").click(function(){
                  scrollValue = $("body").scrollTop();
                    percent = (scrollValue / height) * 100;
                    alert(percent);
        });
    });

1 个答案:

答案 0 :(得分:1)

您可以尝试使用jQuery scrollTop()。请参阅demo at jquery.com

<强>思想: 如果您了解此函数的两种使用类型(带/不带args),您可以使用相同的函数来获取自定义滚动条的当前滚动位置,然后触发div滚动到相对滚动位置。

替代任务:如果您想在鼠标滚轮移动时滚动自定义滚动条,建议您使用jquery mousewheel plugin -

$(window).mousewheel(function(turn, delta) {

  if (delta == 1) // going down
  else //going up

  // all kinds of code

  return false;
});