Javascript 如何更改网站上的滚动行为(例如速度、加速度)?

Javascript 如何更改网站上的滚动行为(例如速度、加速度)?,javascript,scroll,parallax,behavior,motion,Javascript,Scroll,Parallax,Behavior,Motion,如何在网站上修改滚动行为?我想实现一个加速的滚动行为,正如您在示例中看到的那样。因此,你以一定的速度滚动,当你放开页面后,页面会自动滚动一点,然后减速并停止 不幸的是,我完全没有根据提供给你的代码,我希望你仍然可以帮助我。也许你可以向我推荐一些js插件 实现这一目标有两种方法。你可以使用CSS html { scroll-behavior: smooth; } 或者您可以使用JavaScript: // Scroll to specific values // scrollTo is the

如何在网站上修改滚动行为?我想实现一个加速的滚动行为,正如您在示例中看到的那样。因此,你以一定的速度滚动,当你放开页面后,页面会自动滚动一点,然后减速并停止

不幸的是,我完全没有根据提供给你的代码,我希望你仍然可以帮助我。也许你可以向我推荐一些js插件


实现这一目标有两种方法。你可以使用CSS

html { scroll-behavior: smooth; }
或者您可以使用JavaScript:

// Scroll to specific values
// scrollTo is the same
window.scroll({
  top: 2500, 
  left: 0, 
  behavior: 'smooth'
});

// Scroll certain amounts from current position 
window.scrollBy({ 
  top: 100, // could be negative value
  left: 0, 
  behavior: 'smooth' 
});

// Scroll to a certain element
document.querySelector('.hello').scrollIntoView({ 
  behavior: 'smooth' 
})
您可以在此处阅读更多内容并找到更多示例:


希望它能有所帮助。

您只需使用jquery即可

css属性实际上是造成延迟的原因,因此您可以使用它来调整延迟

  transition-duration: 500ms;
参考:

“转换持续时间”CSS属性设置转换的时间长度 过渡动画应该需要多长时间才能完成。默认情况下,该值为 0,表示不会出现动画

$(文档).on('mousemove',(事件)=>{
$('.cursor').css({
顶部:event.clientY,
左:event.clientX,
});
});
.cursor{
过渡定时功能:缓解;
背景色:红色;
边界半径:5px;
高度:10px;
过渡时间:500ms;
转化:translateX(-50%)translateY(-50%);
位置:固定;
宽度:10px;
}

您可以尝试以下方法:

该库实现了加速滚动。下载并导入脚本,然后添加以下内容:

$("body").niceScroll();

请注意,jQuery支持滚动函数中的设置行为,而不是原生Javascript。