您好,登录后才能下订单哦!
密码登录
登录注册
点击 登录注册 即表示同意《亿速云用户服务条款》
这篇文章主要为大家分析了Angular怎么实现表格自滚动效果的相关知识点,内容详细易懂,操作细节合理,具有一定参考价值。如果感兴趣的话,不妨跟着跟随小编一起来看看,下面跟着小编一起深入学习“Angular怎么实现表格自滚动效果”的知识吧。
原理:每一次的滚动都是在其setInterval()定时器的作用下,每次将DOM.scrollTop++
1、 .html 代码如下:(这里我使用div模拟成table)
<div > <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; } } //内容层 .parent { height: 380px; //控制多高处出现滚动条 margin: 0 auto; background: #242424; overflow-y: scroll; .child { /*设置的子盒子高度大于父盒子,产生溢出效果*/ 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//定时器名字 ngOnDestroy() {//每当 Angular 每次销毁指令/组件之前调用并清扫 clearInterval(this.mysetInterval)//关闭循环 }
关于“Angular怎么实现表格自滚动效果”就介绍到这了,更多相关内容可以搜索亿速云以前的文章,希望能够帮助大家答疑解惑,请多多支持亿速云网站!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。