CẬP NHẬT
Chuyển đến đầu trang với hiệu ứng cuộn dễ dàng hơn một chút trong javascript bây giờ với:
https://developer.mozilla.org/en-US/docs/Web/API/Window/scroll
window.scroll({
top: 0,
left: 0,
behavior: 'smooth'
});
THẬN TRỌNG
Chúng tôi đã sử dụng điều này trong các dự án gần đây của chúng tôi, nhưng tôi vừa kiểm tra tài liệu mozilla ngay bây giờ trong khi cập nhật câu trả lời của tôi và tôi tin rằng nó đã được cập nhật. Ngay bây giờ phương pháp này là window.scroll(x-coord, y-coord)
và không đề cập đến hoặc hiển thị ví dụ sử dụng các object
tham số mà bạn có thể thiết lập behavior
để smooth
. Tôi vừa thử mã và nó vẫn hoạt động trong chrome và firefox và tham số đối tượng vẫn còn trong spec .
Vì vậy, sử dụng cẩn thận hoặc bạn có thể sử dụng Polyfill này . Bên cạnh di chuyển lên trên, polyfill này cũng xử lý các phương pháp khác: window.scrollBy
, element.scrollIntoView
vv
TRẢ LỜI
Đây là javascript
thực hiện vanilla của chúng tôi . Nó có tác dụng nới lỏng đơn giản để người dùng không bị sốc sau khi nhấp vào nút Lên trên .
Nó rất nhỏ và thậm chí còn nhỏ hơn khi thu nhỏ. Các nhà phát triển đang tìm kiếm một phương pháp thay thế cho phương pháp jquery nhưng muốn có kết quả tương tự có thể thử điều này.
Mã não
document.querySelector("#to-top").addEventListener("click", function(){
var toTopInterval = setInterval(function(){
var supportedScrollTop = document.body.scrollTop > 0 ? document.body : document.documentElement;
if (supportedScrollTop.scrollTop > 0) {
supportedScrollTop.scrollTop = supportedScrollTop.scrollTop - 50;
}
if (supportedScrollTop.scrollTop < 1) {
clearInterval(toTopInterval);
}
}, 10);
},false);
HTML
<button id="to-top">To Top</button>
Chúc mừng!