滚动结束时的触发功能

时间:2017-11-24 07:19:54

标签: javascript jquery html css

我想激活html页面顶部的弹出菜单,这是为了响应页面内用户的某些活动。当用户在页面内部有一些滚动位置并单击按钮时我想滚动到页面顶部并激活菜单并在滚动激活时隐藏它。

问题是如何在滚动为零时触发事件,因为当滚动变为零时触发事件。

三江源。

3 个答案:

答案 0 :(得分:2)

使用如下例所示的scroll()事件来检查用户是否已滚动到页面底部:

$(window).scroll(function() {
   if($(window).scrollTop() + $(window).height() == $(document).height()) {
       alert("bottom!");
   }
});

或者像这样检查用户是否滚动到顶部:

$(window).scroll(function() {
   if($(window).scrollTop() + $(window).height() == 0) {
       alert("top!");
   }
});

参考:https://stackoverflow.com/a/3898152/3774526

答案 1 :(得分:0)

一旦“用户在页面内部有一些滚动位置并单击按钮我想滚动到页面顶部”...一旦你点击按钮,使其scrolltop为零并启用弹出窗口...还保留一个布尔变量,只有当你点击按钮时它才会成立...所以在scroll函数里面写一个包含布尔检查的AND condtion,并将它设为false ...所以逻辑将像boolean一样仅当您单击按钮时才为true,滚动时为false ...

谢谢!

答案 2 :(得分:0)

$(window).scroll(function () {
    var screenheight = window.innerHeight; // or use document.body.offsetHeight
    var curpos = window.scrollY;
    var totalheight = document.body.scrollHeight;

    if (totalheight - screenheight < curpos) {
        // you are at bottom of the page
    }
});

当您位于页面底部时,我在此处显示的此代码将起作用。如果这不起作用,请告诉我。