大家一定見過一些網站的特效,使用鼠標滾輪向下滾時,網頁上的內容就會自動翻頁。這就是CSS滾輪翻頁。
實現(xiàn)CSS滾輪翻頁非常簡單,只需要使用CSS和JS兩種技術就可以了。首先,需要定義容器樣式,設置為相對定位,并且為其添加高度樣式。具體的代碼如下:
.container { position: relative; height: 100vh; }
然后,需要為內容塊添加樣式,使其顯示在容器中,并設置絕對定位。代碼如下:
.content { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
接下來,需要在JS中監(jiān)聽鼠標滾輪事件,并且根據滾動方向來控制內容塊的翻頁。代碼如下:
var container = document.querySelector('.container'); var contents = document.querySelectorAll('.content'); var currentContentIndex = 0; container.addEventListener('wheel', function(e) { var direction = e.deltaY >0 ? 1 : -1; var nextIndex = currentContentIndex + direction; if(nextIndex< 0 || nextIndex >contents.length - 1) { return; } currentContentIndex = nextIndex; container.style.transform = 'translateY(-' + currentContentIndex * 100 + 'vh)'; });
這段JS代碼中,首先獲取到容器和內容塊的元素,并且定義當前可見的內容塊的索引值。然后,在滾輪事件監(jiān)聽器中,根據鼠標滾動的方向來計算出下一個可見的內容塊的索引值,同時也會檢查索引值是否越界。最后,通過設置容器的transform屬性,實現(xiàn)內容塊的翻頁效果。
如果對JS不是很熟悉的話,也可以使用一些現(xiàn)成的庫來實現(xiàn)CSS滾輪翻頁的效果,比如fullpage.js。
下一篇css滾動條固定到底部