$(window).scroll in vanilla JavaScript

Neo*_*Neo 29 javascript scroll requestanimationframe

  1. 什么是普通JS中的以下内容?

    $(window).scroll(function() { });

  2. 我也想要动画滚动,例如:

    $('html, body').animate({scrollTop:1750}, 'slow');

我应该用requestAnimationFrame吗?

http://paulirish.com/2011/requestanimationframe-for-smart-animating/

是否有任何示例在点击时触发动画而不是连续渲染?

Jon*_*n F 44

问题1

window.onscroll = function() {
    console.log('scrolling');
};
Run Code Online (Sandbox Code Playgroud)

或者如果您的目标浏览器支持 addEventListener:

window.addEventListener('scroll', function() {
        console.log('scrolling');
});
Run Code Online (Sandbox Code Playgroud)

问题2

在我看来,如果你只是从一个部分滚动到页面的另一部分,而没有某种不断运行的滚动运动,那么你可以在不使用requestAnimationFrame的情况下做到这一点.

您可以在纯JavaScript中找到滚动到窗口特定部分的良好实现,我建议检查它们的源(甚至使用它们).