前提,最近项⽬中需要实现table的滚屏效果,并且使⽤的是iview的table组件,踩坑,填坑如下。
1、⾸先到Table组件中的table,就是这个class:ivu-table-body
template部分代码
1 div class="headcol" >
2 <Table border :columns="columns7" :data="data6" ></Table>
3 </div>
2、接着获取DOM的id,并获取到元素的scrollTop值,改变scrollTop的值就可以实现滚屏效果 1 setTimeout(function () {
2 console.ElementsByClassName('ivu-table-body'))
3var table = ElementsByClassName('ivu-table-body');
4 console.log(table);
5 console.log(table[0].height)
6var timer = null;
7// table.scrollTop = 0;
8// table.innerHTML += table.innerHTML;
9// console.log(table.innerHTML)
卡尼丁10 console.log(11111)
11
12function play(){
13 clearInterval(timer);
14 timer = setInterval(function () {
15 table[0].scrollTop++;
16// alert(11111)
17 console.log(table[0].scrollTop)
18 console.log(table);
19// alert(table.scrollHeight)
20if ((table[0].scrollTop )>= (240 / 2)){
21 table[0].scrollTop = 0;
22// alert(222222)
23 }
24
25 },100)
26 }
27
28 setTimeout(play,500);2003赤裸天使
29
新课程理论
30 useover = function () {关灵芝
31 clearInterval(timer)
32
33 };
34 useout = play;
35可来福
36 },0)
3、要设置⽗元素的heigh,overflow属性。
1 <style >
2 .headcol .ivu-table-body {
3 overflow: hidden ;
4 height: 258px ;
5 }
tip:style属性中如果加了scope,那么就会没效果,所以直接⽤的style。要⽤⽗元素+class包裹⼀下,不然全局table组件的⾼度会被改变。填坑完毕。