Javascript 滚动至速度/持续时间设置

Javascript 滚动至速度/持续时间设置,javascript,duration,scrollto,Javascript,Duration,Scrollto,有没有办法加快滚动到的行为速度 我在黑暗中以速度和持续时间捅了一刀,但没用 window.scrollTo({ top: 1000, behavior: "smooth" }); 参考: 下面是纯javascript的实时示例解决方案: //绑定您的按钮点击,滚动方向和效果速度 document.getElementById(“btn转到顶部”).onclick=function(){ //看看它是否真的在地板上 if(document.documentElement.s

有没有办法加快
滚动到
的行为速度

我在黑暗中以
速度
持续时间
捅了一刀,但没用

window.scrollTo({
    top: 1000,
    behavior: "smooth"
});
参考:
下面是纯javascript的实时示例解决方案:
//绑定您的按钮点击,滚动方向和效果速度
document.getElementById(“btn转到顶部”).onclick=function(){
//看看它是否真的在地板上
if(document.documentElement.scrollHeight-document.documentElement.scrollTop-document.documentElement.clientHeight==0){
滚动至(01300);
}
}
//看看它是否真的在顶端
document.getElementById(“btn go floor”).onclick=function(){
if(document.documentElement.scrollTop==0){
scrollTo(document.documentElement.scrollHeight-document.documentElement.clientHeight,4269);
}
}
/*--------------------------------------------
使用速度控制进行滚动的功能
---------------------------------------------*/
//要移动的元素或位置+时间(毫秒)
函数滚动到(元素、持续时间){
var e=document.documentElement;
如果(如scrollTop==0){
var t=e.scrollTop;
++e、 滚动顶;
e=t+1==e.scrollTop--?e:document.body;
}
scrollToC(e,e.scrollTop,元素,持续时间);
}
//要移动的元素,元素或像素从,元素或像素到,设置动画的时间(毫秒)
函数scrollToC(元素、起始、结束、持续时间){

如果(持续时间1 | |速度使用承诺的工作解决方案:

function scrollDelay(ms) {
    return new Promise(res => setTimeout(res, ms));
}

document.getElementById("slow-scroll-demo-button").onclick = async function() {
    for (var y = 0; y <= 4200; y += 100) {
        window.scrollTo({top: y, behavior: 'smooth'})
        await scrollDelay(100)
    }
}
功能滚动延迟(毫秒){
返回新承诺(res=>setTimeout(res,ms));
}
document.getElementById(“慢速滚动演示按钮”).onclick=async function(){

对于(var y=0;y),我猜
行为:'auto'
行为:'instant'
太快了?我认为在该方法的配置对象中没有持续时间选项@ℛƒæĿ不是复制品,我已经在平滑滚动。请阅读我的帖子。我想更改速度。@KevinBoucher yeh这两个值之间的某个值正是我想要的,我期待毫秒值,但我想不是。这可能会有帮助:@GoldenGonaz非常好!我正在研究此解决方案,并将其调整为自定义React Hook=)感谢您与我们分享知识=)\@Alioshr感谢您的反馈。我非常感谢您的帮助!什么是
Mathf
?@vanowm您是对的,它不存在,并且Mathf的最后效果函数不起作用。我从javascript更新了用于数学的代码。感谢您让我知道!这与使用
setTimeout
的简单循环有何不同?