原生js實現(xiàn)表格循環(huán)滾動
更新時間:2020年11月24日 09:16:42 作者:卅夙愿
這篇文章主要為大家詳細介紹了原生js實現(xiàn)表格循環(huán)滾動,每次滾動一行停頓,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
本文實例為大家分享了js實現(xiàn)表格循環(huán)滾動的具體代碼,供大家參考,具體內容如下
css
table{width: 500px;border: 1px solid gray;border-collapse: collapse;} th,td{line-height: 35px;border: 1px solid gray;text-align: center;width: 120px;} .scroll-box{height: 280px;width: 500px;overflow: hidden;position: relative;} .tab-scroll{position: absolute;left: 0;top: 0;border-top: none;} .tab-scroll td{border-top: none;}
html布局
<table class="top"> <thead> <tr> <th>ID</th> <th>姓名</th> <th>年齡</th> <th>住址</th> </tr> </thead> </table> <div class="scroll-box"> <table class="tab-scroll"> <tbody> <tr> <td>1001</td> <td>李四</td> <td>AAAA</td> <td>AAAA</td> </tr> <tr> <td>1002</td> <td>王五</td> <td>AAAA</td> <td>AAAA</td> </tr> <tr> <td>1003</td> <td>王五</td> <td>AAAA</td> <td>AAAA</td> </tr> <tr> <td>1004</td> <td>Jack</td> <td>AAAA</td> <td>AAAA</td> </tr> <tr> <td>1005</td> <td>小蘭</td> <td>AAAA</td> <td>AAAA</td> </tr> <tr> <td>1006</td> <td>王五</td> <td>AAAA</td> <td>AAAA</td> </tr> <tr> <td>1007</td> <td>王五</td> <td>AAAA</td> <td>AAAA</td> </tr> <tr> <td>1008</td> <td>Jack</td> <td>AAAA</td> <td>AAAA</td> </tr> <tr> <td>1009</td> <td>小蘭</td> <td>AAAA</td> <td>AAAA</td> </tr> </tbody> </table> </div>
js代碼
var sTab = document.getElementsByClassName('tab-scroll')[0];//要滾動的表 var tbody = sTab.getElementsByTagName('tbody')[0];//要滾動表格的內容 sTab.appendChild(tbody.cloneNode(true));//追加一次滾動內容,以防滾動后可視區(qū)域無內容 var speed = sTab.getElementsByTagName('td')[0].offsetHeight+3;//每次滾動的距離 var tbdh = tbody.offsetHeight+1;//整個表的高度,是因為上邊的邊不算滾動 function scrollTop() { var t = sTab.offsetTop;//獲取要滾動表的位置 if (-tbdh == t) {//比較 滾動的距離等于整個表的高度 即第一個表完全看不見 sTab.style.transition = '0s';//過渡動畫設為0秒 sTab.style.top = 0;//位置設為初始位置 scrollTop();//因為偷梁換柱消耗了一次過程,所以把這一次過程補回來 }else{ sTab.style.transition = '1s'; sTab.style.top = t - speed + 'px'; } } setInterval(scrollTop, 1000);
解析思路圖
然后滾動....
偷偷改到初始的位置(也就是:不用過渡動畫把top改為0,改后恢復正常過渡動畫滾動)
一些輪播圖也可以用這個思路(我才不會告訴你,,其實這個思路就是從輪播圖得來的),想看輪播圖思路的把上面思路圖轉動90°就OK了
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
JavaScript基于面向對象實現(xiàn)的無縫滾動輪播示例
這篇文章主要介紹了JavaScript基于面向對象實現(xiàn)的無縫滾動輪播,結合實例形式分析了JavaScript面向對象實現(xiàn)的無縫滾動輪播相關對象定義、初始化及功能實現(xiàn)技巧,需要的朋友可以參考下2020-01-01JavaScript利用Date實現(xiàn)簡單的倒計時實例
在日常開發(fā)的時候經常遇到關于倒計時的需求,下面這篇文章就給主要介紹了JavaScript利用Date實現(xiàn)倒計時效果的方法示例,文中主要實現(xiàn)了倒計時和倒計時結束搶購的按鈕才可以被點擊的效果,有需要的朋友可以參考借鑒。2017-01-01