Angular實(shí)現(xiàn)表格自滾動(dòng)效果
表格自滾動(dòng)效果圖
實(shí)現(xiàn)原理
原理:每一次的滾動(dòng)都是在其setInterval()定時(shí)器的作用下,每次將DOM.scrollTop++
具體實(shí)現(xiàn):
1、 .html 代碼如下:(這里我使用div模擬成table)
<div style="padding: 100px;"> <div class="tableTitleRow"> <div class="tabletTitle">Name</div> <div class="tabletTitle">Age</div> <div class="tabletTitle">Address</div> </div> <div id="parent" class="parent"> <div id="child1" class="child"> <div *ngFor="let data of listOfData;index as i"> <div class="tableBodyRow"> <div class="tabletBody">{{i}}</div> <div class="tabletBody">{{i+10}}</div> <div class="tabletBody">{{i+100}}</div> </div> </div> </div> <div id="child2" class="child"></div> </div> </div>
2、 .css 代碼如下:
.Qbody { ? padding: 100px; ? // 表頭層 ? .tableTitleRow { ? ? display: flex; ? ? .tabletTitle { ? ? ? color: #ffffff; ? ? ? background-color: #1e6fff; ? ? ? height: 64px; ? ? ? font-size: 16px; ? ? ? flex: 1; ? ? ? justify-content: flex-start; ? ? ? text-align: center; ? ? ? line-height: 64px; ? ? ? border: 1px solid #ccc; ? ? } ? } ? //內(nèi)容層 ? .parent { ? ? height: 380px; //控制多高處出現(xiàn)滾動(dòng)條 ? ? margin: 0 auto; ? ? background: #242424; ? ? overflow-y: scroll; ? ? .child { ? ? ? /*設(shè)置的子盒子高度大于父盒子,產(chǎn)生溢出效果*/ ? ? ? height: auto; ? ? ? div { ? ? ? ? .tableBodyRow { ? ? ? ? ? display: flex; ? ? ? ? ? .tabletBody { ? ? ? ? ? ? background: #ffffff; ? ? ? ? ? ? font-size: 16px; ? ? ? ? ? ? flex: 1; ? ? ? ? ? ? justify-content: flex-start; ? ? ? ? ? ? text-align: center; ? ? ? ? ? ? line-height: 64px; ? ? ? ? ? ? border: 1px solid #ccc; ? ? ? ? ? ? div { ? ? ? ? ? ? ? line-height: 30px; ? ? ? ? ? ? ? border-top: 1px solid #ccc; ? ? ? ? ? ? ? border-bottom: 1px solid #ccc; ? ? ? ? ? ? } ? ? ? ? ? } ? ? ? ? } ? ? ? } ? ? } ? } }
3、 .js 代碼如下:
ngOnInit(): void { var parent = document.getElementById('parent');//獲取Dom var child1 = document.getElementById('child1');//獲取Dom var child2 = document.getElementById('child2');//獲取Dom child2.innerHTML = child1.innerHTML; this.mysetInterval=setInterval(function () { if((parent.scrollTop++) == (parent.scrollTop)&&(parent.scrollTop!=0)) { parent.scrollTop = 0; } else { parent.scrollTop++; } }, 50); } mysetInterval//定時(shí)器名字 ngOnDestroy() {//每當(dāng) Angular 每次銷毀指令/組件之前調(diào)用并清掃 clearInterval(this.mysetInterval)//關(guān)閉循環(huán) }
到此這篇關(guān)于Angular實(shí)現(xiàn)表格自滾動(dòng)效果的文章就介紹到這了,更多相關(guān)Angular表格自滾動(dòng)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- AngularJS基于ngInfiniteScroll實(shí)現(xiàn)下拉滾動(dòng)加載的方法
- AngularJS 中使用Swiper制作滾動(dòng)圖不能滑動(dòng)的解決方法
- angularjs實(shí)現(xiàn)文字上下無(wú)縫滾動(dòng)特效代碼
- Angularjs 滾動(dòng)加載更多數(shù)據(jù)
- 基于AngularJS實(shí)現(xiàn)頁(yè)面滾動(dòng)到底自動(dòng)加載數(shù)據(jù)的功能
- Angular中使用Intersection Observer API實(shí)現(xiàn)無(wú)限滾動(dòng)效果
相關(guān)文章
詳解什么是@ngrx/store開(kāi)發(fā)包中的MemoizedSelector
這篇文章主要為大家介紹了@ngrx/store開(kāi)發(fā)包中的MemoizedSelector使用分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-07-07Angular.js中ng-include用法及多標(biāo)簽頁(yè)面的實(shí)現(xiàn)方式詳解
這篇文章主要給大家介紹了在Angular.js中ng-include用法及多標(biāo)簽頁(yè)面的實(shí)現(xiàn)方式的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),相信對(duì)大家具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編一起來(lái)學(xué)習(xí)學(xué)習(xí)吧。2017-05-05AngularJS動(dòng)態(tài)綁定HTML的方法分析
這篇文章主要介紹了AngularJS動(dòng)態(tài)綁定HTML的方法,結(jié)合實(shí)例形式分析了AngularJS實(shí)現(xiàn)動(dòng)態(tài)綁定HTML的相關(guān)操作指令用法與使用注意事項(xiàng),需要的朋友可以參考下2016-11-11angularjs實(shí)現(xiàn)下拉列表的選中事件示例
本篇文章主要介紹了angularjs實(shí)現(xiàn)下拉列表的選中事件示例,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-03-03AngularJS 與Bootstrap實(shí)現(xiàn)表格分頁(yè)實(shí)例代碼
這篇文章主要介紹了AngularJS 與Bootstrap實(shí)現(xiàn)表格分頁(yè)的相關(guān)資料,并附實(shí)例代碼和實(shí)現(xiàn)效果圖,需要的朋友可以參考下2016-10-10自定義Angular指令與jQuery實(shí)現(xiàn)的Bootstrap風(fēng)格數(shù)據(jù)雙向綁定的單選與多選下拉框
這篇文章主要介紹了自定義Angular指令與jQuery實(shí)現(xiàn)的Bootstrap風(fēng)格數(shù)據(jù)雙向綁定的單選與多選下拉框 的相關(guān)資料,需要的朋友可以參考下2015-12-12