AVt天堂网 手机版,亚洲va久久久噜噜噜久久4399,天天综合亚洲色在线精品,亚洲一级Av无码毛片久久精品

當前位置:首頁 > 科技  > 軟件

突發奇想!Vue3 實現消息無限滾動的新思路!

來源: 責編: 時間:2024-06-20 15:22:38 119觀看
導讀前言大家好,我是林三心,用最通俗易懂的話講最難的知識點是我的座右銘,基礎是進階的前提是我的初心!最近有一個需求,需要在頁面中做一個垂直方向的無限滾動,效果基本為如下,這個滾動是一直在持續的,不斷循環。這個效果挺有意思

前言

大家好,我是林三心,用最通俗易懂的話講最難的知識點是我的座右銘,基礎是進階的前提是我的初心!cWV28資訊網——每日最新資訊28at.com

最近有一個需求,需要在頁面中做一個垂直方向的無限滾動,效果基本為如下,這個滾動是一直在持續的,不斷循環。cWV28資訊網——每日最新資訊28at.com

圖片cWV28資訊網——每日最新資訊28at.com

cWV28資訊網——每日最新資訊28at.com

這個效果挺有意思的,實現起來不難,所以分享一下!cWV28資訊網——每日最新資訊28at.com

實現

基礎頁面

首先準備一下基礎的頁面,之所以給容器設置 overflow:hidden 是為了把滾動條給去掉,因為我們并不需要滾動條。cWV28資訊網——每日最新資訊28at.com

圖片圖片cWV28資訊網——每日最新資訊28at.com

cWV28資訊網——每日最新資訊28at.com

可以看出有些項是不在容器可視范圍內的,且每一項的高度是 22px(每一項的高度可以自己定,我這里就用 22px 來進行示范)。cWV28資訊網——每日最新資訊28at.com

圖片圖片cWV28資訊網——每日最新資訊28at.com

cWV28資訊網——每日最新資訊28at.com

滾動起來

接下來得讓這個容器滾動起來,那要怎么滾動呢?可以使用 scrollTo 這個方法來進行滾動~并且為了持續保持滾動,可以使用 requestAnimationFrame 來不斷進行。cWV28資訊網——每日最新資訊28at.com

每次都對 top 進行遞增,保證容器不斷向上滾動。cWV28資訊網——每日最新資訊28at.com

圖片圖片cWV28資訊網——每日最新資訊28at.com

cWV28資訊網——每日最新資訊28at.com

但是我們可以看到,雖然top 一直在遞增,但是滾動到最后就不動了!這是因為這個時候已經滾動到最底部了,那么自然就滾動不了了。cWV28資訊網——每日最新資訊28at.com

圖片圖片cWV28資訊網——每日最新資訊28at.com

cWV28資訊網——每日最新資訊28at.com

永遠滾動不完?

上面為啥滾到底部就滾不動了呢?因為到最底部了,所以滾不動了呀!cWV28資訊網——每日最新資訊28at.com

那么想要永遠滾不完應該怎么辦呢?其實有一種辦法,那就是永遠到不了底,那要怎么實現呢?其實很簡單,只要讓數據不斷增加就行!cWV28資訊網——每日最新資訊28at.com

怎么讓數據不斷增加呢,并且增加的規則是什么呢?其實很簡單,我們每次滾上去一項,就拷貝這一項push 到列表數據末端,這樣就能做到數據永遠滾不完!cWV28資訊網——每日最新資訊28at.com

圖片圖片cWV28資訊網——每日最新資訊28at.com

cWV28資訊網——每日最新資訊28at.com

下面是代碼實現,為什么是除以22 呢?因為每一項的高度是 22px。cWV28資訊網——每日最新資訊28at.com

圖片圖片cWV28資訊網——每日最新資訊28at.com

cWV28資訊網——每日最新資訊28at.com

現在可以達到想要的無限滾動效果。cWV28資訊網——每日最新資訊28at.com

圖片圖片cWV28資訊網——每日最新資訊28at.com

cWV28資訊網——每日最新資訊28at.com

數據不斷增長?

但是其實上面的做法還是有缺點的,因為數據不斷地push也就是不斷地增加,如果頁面保持一段時間的話,會大大占用內存,導致頁面卡頓!!cWV28資訊網——每日最新資訊28at.com

所以我們可以在適當的時間點,去初始化數據,也就是把數據恢復到一開始樣子,這樣就能避免數據不斷增加了!cWV28資訊網——每日最新資訊28at.com

那么應該在什么時機去初始化數據呢?并且要怎么初始化才能讓用戶察覺不出來呢?怎么做到無縫銜接進行初始化呢?cWV28資訊網——每日最新資訊28at.com

通過一個圖告訴大家~其實最好的時機就是在剛好滾動完一輪的時候。cWV28資訊網——每日最新資訊28at.com

圖片圖片cWV28資訊網——每日最新資訊28at.com

cWV28資訊網——每日最新資訊28at.com

最終代碼實現如下:cWV28資訊網——每日最新資訊28at.com

圖片圖片cWV28資訊網——每日最新資訊28at.com

cWV28資訊網——每日最新資訊28at.com

最終實現效果:cWV28資訊網——每日最新資訊28at.com

圖片 圖片 cWV28資訊網——每日最新資訊28at.com

本文鏈接:http://www.tebozhan.com/showinfo-26-95162-0.html突發奇想!Vue3 實現消息無限滾動的新思路!

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。郵件:2376512515@qq.com

上一篇: 快速學習一個算法,Vision Transformer

下一篇: Apereo CAS SSO單點系統的 OAuth2/OpenID Connect集成問題

標簽:
  • 熱門焦點
Top