javascript 滚动到顶部
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript 滚动到顶部相关的知识,希望对你有一定的参考价值。
// scrollTop animation
export function scrollTop(el, from = 0, to, duration = 500, endCallback) {
if (!window.requestAnimationFrame) {
window.requestAnimationFrame =
window.webkitRequestAnimationFrame ||
window.mozRequestAnimationFrame ||
window.msRequestAnimationFrame ||
function(callback) {
return window.setTimeout(callback, 1000 / 60)
}
}
const difference = Math.abs(from - to)
const step = Math.ceil((difference / duration) * 50)
function scroll(start, end, step) {
if (start === end) {
endCallback && endCallback()
return
}
let d = start + step > end ? end : start + step
if (start > end) {
d = start - step < end ? end : start - step
}
if (el === window) {
window.scrollTo(d, d)
} else {
el.scrollTop = d
}
window.requestAnimationFrame(() => scroll(d, end, step))
}
scroll(from, to, step)
}
以上是关于javascript 滚动到顶部的主要内容,如果未能解决你的问题,请参考以下文章
跨浏览器 JavaScript(不是 jQuery...)滚动到顶部动画
跨浏览器 JavaScript(不是 jQuery...)滚动到顶部动画
javascript 滚动到顶部
javascript 滚动到顶部-50px
javascript 滚动到顶部#js #animate
javascript 滚动到顶部#js #animate