启用 JavaScript 的过度滚动

标签 javascript overscroll

可以制作平滑的滚动动画,从网页的一部分转到另一部分。现在,一些浏览器(例如 Chrome for Mac)支持“过度滚动”,并且经常滚动涉及过度滚动。

所以传统的滚动动画在没有过度滚动的情况下看起来很不自然。有没有办法用 JavaScript 过度滚动网页以增强传统的滚动动画?

最佳答案

是的,你可以制作反弹动画。

我猜你的意思是反弹 https://ux.stackexchange.com/questions/13183/name-of-the-touch-ui-overscroll-feature

我刚刚构建了一个快速/错误的。

var threshold = 400,
    wrap = document.getElementById('wrap'),
    wrapHeight = wrap.offsetHeight,
    pageHeight = (wrapHeight + threshold);

wrap.style.height = pageHeight+'px';

window.addEventListener('scroll', function(){
    var pageY = window.pageYOffset;

    if (pageY > wrapHeight - threshold*1.5) {
        wrap.style.height = wrapHeight+'px';
    }
    if (wrap.offsetHeight === wrapHeight) {
        if ((pageY > wrapHeight - threshold*2.5) ) {
            wrap.style.height = pageHeight+'px';
        }
    }
});

还有https://github.com/andrewrjones/jquery.bounceback

我的代码背后的基本思想: 您使页面变大以容纳动画。 然后在滚动离开底部后重置页面高度。

要实际制作您需要添加的动画: #裹 { -webkit-transition: height .5s;

关于启用 JavaScript 的过度滚动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12121179/

相关文章:

javascript - 为什么 promise 的记录值令人困惑?

javascript - 如何隐藏 bootbox.js 模态

javascript - 箭头函数内的换行符引发 “Uncaught SyntaxError: Unexpected token ` = >`”

javascript - 谷歌标签管理器代码解释

javascript - 错误 TS2339 : JavaScript to Typescript error

android - 如何禁用 gridview 的过度显示?

javascript - 是否使用 phonegap 在 iOS 上禁用水平滚动

html - iPad 上可滚动 div 的问题