Tạo một cuộn hoạt hình mượt mà với JavaScript – javascript cuộn mượt mà lên đầu

Tìm hiểu cách tạo cuộn động mượt mà với rất ít mã trong JavaScript vani. Không cần thư viện của bên thứ ba!

Bạn đang xem : javascript cuộn mượt lên đầu

Một thư viện của bên thứ ba thường được yêu cầu để thực hiện các hiệu ứng đơn giản như cuộn mượt trong JavaScript. Những ngày đó giờ đã là lịch sử khi vanilla JavaScript hỗ trợ tính năng này trên hầu hết tất cả các trình duyệt hiện đại với phương thức window.scrollTo () được tích hợp sẵn.

Tại sao nên chọn Smooth Scrolling?

Đặt mình vào vị trí của người dùng. Bạn nhấp vào một phần tử của trang web, chỉ để thấy rằng màn hình đã đột ngột thay đổi và bạn không biết chuyện gì đã xảy ra hay mình đang ở đâu. Sự thay đổi đột ngột này có thể gây nhầm lẫn cho nhiều người dùng.

Nhập tính năng cuộn mượt mà JavaScript cung cấp một cách liền mạch. Hãy coi nó như một hướng dẫn. Hoạt ảnh hướng dẫn bạn đến vị trí mong muốn sau khi nhấp vào một phần tử trang web. Vì vậy, bây giờ bạn biết bạn đang ở đâu và làm thế nào bạn đến đó. Nhìn chung, nó mang lại trải nghiệm thân thiện và dễ chịu hơn.

Mặc dù cuộn động mượt mà là một tính năng tuyệt vời cần có, nhưng nó cũng có thể dễ bị lạm dụng. Đảm bảo rằng bạn không đặt các tính năng tự động cuộn trên trang web của mình nơi người dùng của bạn không mong đợi có được. Nhấp vào một tùy chọn hoặc nút menu để đưa người dùng đến một phần khác của trang hiện tại là lý tưởng, nhưng việc đặt tự động cuộn trên toàn bộ trang web để thu hút họ đến những nơi khác mà họ không mong đợi thì không.

Cách tạo hiệu ứng cuộn với JavaScript

Có thể bạn đã quen với việc tạo cuộn tự động chuyển đến một vị trí cụ thể trong trang web:

 window.scrollTo (0, 1000); 

Đoạn mã trên đưa người dùng xuống 1.000 pixel theo chiều dọc từ đầu trang web mà không có hoạt ảnh.

Vanilla JavaScript có thể cuộn bằng cách sử dụng hoạt ảnh mượt mà theo cú pháp sau:

 window.scroll ({
top: 1000,
behavior: "Smooth"
});

Đoạn mã thứ hai cung cấp cùng một kết quả như lần đầu tiên, ngoại trừ lần này, nó hoạt ảnh xuống 1.000 pixel theo chiều dọc từ đầu trang web.

Cuộn tăng dần

Có thể có lúc bạn không muốn cuộn đến một vị trí Y cụ thể trên một trang web, nhưng bạn muốn t o cuộn lên hoặc xuống một lượng pixel chính xác.

Đây được gọi là cuộn tăng dần, bạn có thể thực hiện việc này bằng phương thức window.scrollBy () của JavaScript:

< pre> window.scrollBy ({
top: -100,
hành vi: “Smooth”
});

Cuộn lên đầu trang

Bạn có thể cuộn lên đầu trang bằng cách đặt thuộc tính “top” thành 0, vị trí Y đầu tiên trong trang HTML:

 window.scrollTo ({
top: 0 ,
hành vi: "Smooth"
});

Cuộn xuống cuối trang

Tương tự, bạn có thể cuộn xuống cuối trang bằng cách truy xuất chiều cao bên trong của cửa sổ:

 window.scrollTo ({
top: window.innerHeight,
hành vi: "Smooth"
});

Cuộn đến Phần tử DOM

Tùy chọn này tạo cuộn động tự động mượt mà đến phần tử trong DOM:

 document 
.getElementById ("orangable")
.scrollIntoView ({behavior: "Smooth"});

Đoạn mã này tìm kiếm phần tử DOM có ID orangea ble, sau đó cuộn đến phần trên cùng của phần tử đó cho đến khi nó ở chế độ xem.

Hành vi cuộn

Chỉ có hai phương pháp hành vi khả dụng để cuộn mượt mà trong JavaScript:

< ul>

  • mượt mà : Hoạt ảnh cuộn chuyển động mượt mà.
  • auto : Quá trình cuộn diễn ra chỉ trong một bước nhảy.
  • Nếu bạn muốn nhảy cuộn, bạn có thể lưu cho mình mã bổ sung và sử dụng phương thức window.scrollTo () với các giá trị X và Y mà chúng ta đã thảo luận trước đó.

    Hỗ trợ trình duyệt

    Tính năng cuộn mượt mà khả dụng trong hầu hết các trình duyệt hiện đại. Thật không may cho người dùng Apple, Safari chưa hỗ trợ tính năng của anh ấy, tuy nhiên, có sẵn tùy chọn polyfill sẽ lấp đầy khoảng trống và cung cấp chức năng cho bạn ‘ đang tìm kiếm.

    Kết luận

    Hãy thử cuộn mượt mà trong dự án tiếp theo của bạn! Thật là thú vị khi làm việc, cực kỳ dễ triển khai và mang lại trải nghiệm tổng thể tốt hơn cho người dùng của bạn.


    Xem thêm những thông tin liên quan đến chủ đề javascript cuộn mượt mà lên đầu

    JavaScript – How to Add Smooth Scrolling Anchor Links to Jump to a Specific Part of a Web Page

    • Tác giả: codefoxx
    • Ngày đăng: 2021-08-09
    • Đánh giá: 4 ⭐ ( 1058 lượt đánh giá )
    • Khớp với kết quả tìm kiếm: In this tutorial you’ll learn how to scroll up or down a website using an anchor link with JavaScript.

      Codepen:
      https://codepen.io/codefoxx/pen/eYWbBWw

      Personal portfolio:
      https://miguelznunez.com/

      Learn JavaScript by building 25 beginner projects:
      https://jsprospect.com/

      Read my blog:
      https://medium.com/@iamcodefoxx

      Like the intro to my video? Learn how to make one:
      https://paykstrt.com/11298/66358

      Email: iamcodefoxx@gmail.com
      Twitter: https://twitter.com/CodeFoxx
      GitHub: https://github.com/iamcodefoxx
      PayPal Donations: iamcodefoxx@gmail.com

    Cách thêm hiệu ứng cuộn lên đầu mượt mà trong WordPress bằng jQuery

    • Tác giả: pluginthanhtoan.com
    • Đánh giá: 5 ⭐ ( 9090 lượt đánh giá )
    • Khớp với kết quả tìm kiếm: Cách thêm hiệu ứng cuộn lên đầu mượt mà trong WordPress bằng jQuery

    Tạo hiệu ứng trượt mượt mà bằng JavaScript khi thiết kế Landing Page

    • Tác giả: giuseart.com
    • Đánh giá: 4 ⭐ ( 3021 lượt đánh giá )
    • Khớp với kết quả tìm kiếm: GiuseArt.com hướng dẫn các bạn tạo hiệu ứng trượt mượt mà bằng JavaScript khi thiết kế Landing Page. Tự học CSS và học WordPress hiệu quả với GiuseArt

    Smooth Scroll – javascript thuần

    • Tác giả: viblo.asia
    • Đánh giá: 4 ⭐ ( 7243 lượt đánh giá )
    • Khớp với kết quả tìm kiếm: Bài viết được dịch từ bài Smooth Scroll with vanilla javascript của tác giả Gurjit Singh.

    Hiệu ứng trượt mượt mà (Smooth scroll) chỉ dùng Javascript

    • Tác giả: www.thichnet.com
    • Đánh giá: 4 ⭐ ( 2328 lượt đánh giá )
    • Khớp với kết quả tìm kiếm: Blog chia sẻ thủ thuật về Blogger, Internet

    Cuộn mượt bằng window.scrollBy

    • Tác giả: vie.sierrasummit2005.org
    • Đánh giá: 5 ⭐ ( 8107 lượt đánh giá )
    • Khớp với kết quả tìm kiếm: Tôi đang cố gắng cuộn một trang trơn tru bằng cách sử dụng setInterval () và window.scrollBy () Tôi sẽ sử dụng hàm animate của jQuery, nhưng hoạt ảnh cần phải liên tục và lặp lại vô hạn (nội dung trang …

    cuộn mượt mà lên đầu

    • Tác giả: vie.fitforlearning.org
    • Đánh giá: 4 ⭐ ( 6690 lượt đánh giá )
    • Khớp với kết quả tìm kiếm: Tôi đã đậu tìm kiếm điều này trong vài giờ và tôi không có giải pháp nào. Tôi muốn cuộn mượt mà lên đầu trang. Tôi đã cuộn trơn tru để tách các neo riêng biệt trong trang bằng tệp .js

    Xem thêm các bài viết khác thuộc chuyên mục: Kiến thức lập trình

    Xem Thêm  Tạo nút đăng xuất HTML - cách thêm nút đăng xuất trong html