Bootstrap JS Scrollspy
JS Scrollspy
Scrollspy được sử dụng để tự động cập nhật các liên kết trong danh sách điều hướng dựa trên vị trí cuộn.
Để có hướng dẫn về Scrollspy, hãy đọc Hướng dẫn về Bootstrap Scrollspy của chúng tôi .
Qua dữ liệu- * Thuộc tính
Thêm data-spy="scroll"
vào phần tử sẽ được sử dụng làm vùng có thể cuộn (thường đây là <body>
phần tử).
Sau đó, thêm data-target
thuộc tính với một giá trị của id hoặc tên lớp của thanh điều hướng ( .navbar
). Điều này là để đảm bảo rằng thanh điều hướng được kết nối với vùng có thể cuộn.
Lưu ý rằng các phần tử có thể cuộn phải khớp với ID của các liên kết bên trong các mục danh sách của thanh điều hướng ( <div id="section1">
đối sánh <a href="#section1">
).
Thuộc tính tùy chọn data-offset
chỉ định số lượng pixel cần bù từ trên xuống khi tính toán vị trí của cuộn. Điều này hữu ích khi bạn cảm thấy rằng các liên kết bên trong thanh điều hướng thay đổi trạng thái hoạt động quá sớm hoặc quá sớm khi chuyển đến các phần tử có thể cuộn. Mặc định là 10 pixel.
Yêu cầu vị trí tương đối: Phần tử có data-spy = "scroll" yêu cầu thuộc tính CSS position , với giá trị "tương đối" để hoạt động bình thường.
Thí dụ
<!-- The scrollable area -->
<body data-spy="scroll"
data-target=".navbar" data-offset="50">
<!-- The navbar - The
<a> elements are used to jump to a section in the scrollable area -->
<nav class="navbar navbar-expand-sm bg-dark navbar-dark fixed-top">
<ul class="navbar-nav">
<li class="nav-item">
<a class="nav-link" href="#section1">Section 1</a>
</li>
....
</ul>
</nav>
<!-- Section 1
-->
<div id="section1">
<h1>Section 1</h1>
<p>Try to scroll this page and look at
the navigation bar while scrolling!</p>
</div>
...
</body>
Qua JavaScript
Bật theo cách thủ công với:
Thí dụ
$('body').scrollspy({target: ".navbar"})
Tùy chọn cuộn
Các tùy chọn có thể được chuyển qua các thuộc tính dữ liệu hoặc JavaScript. Đối với các thuộc tính dữ liệu, hãy nối tên tùy chọn vào data-, như trong data-offset = "".
Name | Type | Default | Description | Try it |
---|---|---|---|---|
offset | number | 10 | Specifies the number of pixels to offset from top when calculating the position of scroll |
Phương thức cuộn
Bảng sau liệt kê tất cả các phương thức scrollspy có sẵn.
Method | Description |
---|---|
.scrollspy("refresh") | When adding and removing elements from the scrollspy, this method can be used to refresh the document |
.scrollspy("dispose") | Destroys the scrollspy |
Sự kiện cuộn
Bảng sau đây liệt kê tất cả các sự kiện scrollspy có sẵn.
Event | Description |
---|---|
activate.bs.scrollspy | Occurs when a new item becomes activated by the scrollspy |