js通过transform实现固定(冻结)表格列

左手的ㄟ右手 2023-06-20 06:21 110阅读 0赞

20191208182205343.png

  1. <div id='table-cont' style="max-height: 150px;width: 540px;overflow: scroll;">
  2. <table style="width:800px;">
  3. <thead>
  4. <tr style="background: #dcdcdc;">
  5. <th class="drag_user" style="background: #dcdcdc;">用户编号</th>
  6. <th>试用时间</th>
  7. <th>转正时间</th>
  8. <th>性别</th>
  9. <th>姓名拼音</th>
  10. <th>生日时间</th>
  11. <th>民族</th>
  12. <th>身高</th>
  13. </tr>
  14. </thead>
  15. <tbody>
  16. <tr style="background: white;">
  17. <td class="drag_user" style="background: white;">2000001</td>
  18. <td>1997-3-13</td>
  19. <td>1997-3-13</td>
  20. <td>1</td>
  21. <td>WZJ</td>
  22. <td>1965-3-13</td>
  23. <td></td>
  24. <td>171</td>
  25. </tr>
  26. <tr>
  27. <td class="drag_user" style="background: white;">2000045</td>
  28. <td>2001-2-15</td>
  29. <td>2001-3-15</td>
  30. <td>0</td>
  31. <td>WY</td>
  32. <td>1978-8-5</td>
  33. <td></td>
  34. <td>162</td>
  35. </tr>
  36. <tr>
  37. <td class="drag_user" style="background: white;">2000046</td>
  38. <td>2001-2-23</td>
  39. <td>2001-3-23</td>
  40. <td>0</td>
  41. <td>LQ</td>
  42. <td>2001-2-23</td>
  43. <td></td>
  44. <td>171</td>
  45. </tr>
  46. <tr>
  47. <td class="drag_user" style="background: white;">2000046</td>
  48. <td>2001-2-23</td>
  49. <td>2001-3-23</td>
  50. <td>0</td>
  51. <td>LQ</td>
  52. <td>2001-2-23</td>
  53. <td></td>
  54. <td>171</td>
  55. </tr>
  56. <tr>
  57. <td class="drag_user" style="background: white;">2000046</td>
  58. <td>2001-2-23</td>
  59. <td>2001-3-23</td>
  60. <td>0</td>
  61. <td>LQ</td>
  62. <td>2001-2-23</td>
  63. <td></td>
  64. <td>171</td>
  65. </tr>
  66. <tr>
  67. <td class="drag_user" style="background: white;">2000046</td>
  68. <td>2001-2-23</td>
  69. <td>2001-3-23</td>
  70. <td>0</td>
  71. <td>LQ</td>
  72. <td>2001-2-23</td>
  73. <td></td>
  74. <td>171</td>
  75. </tr>
  76. <tr>
  77. <td class="drag_user" style="background: white;">2000046</td>
  78. <td>2001-2-23</td>
  79. <td>2001-3-23</td>
  80. <td>0</td>
  81. <td>LQ</td>
  82. <td>2001-2-23</td>
  83. <td></td>
  84. <td>171</td>
  85. </tr>
  86. <tr>
  87. <td class="drag_user" style="background: white;">2000046</td>
  88. <td>2001-2-23</td>
  89. <td>2001-3-23</td>
  90. <td>0</td>
  91. <td>LQ</td>
  92. <td>2001-2-23</td>
  93. <td></td>
  94. <td>171</td>
  95. </tr>
  96. </tbody>
  97. </table>
  98. </div>
  99. <script type="text/javascript">
  100. var tableCont = document.querySelector('#table-cont');
  101. function scrollHandle(event) {
  102. var scrollTop = event.target.scrollTop;
  103. var scrollLeft = event.target.scrollLeft;
  104. event.target.querySelector('thead').style.transform = 'translateY(' + scrollTop + 'px)';
  105. var dragUsers = event.target.querySelectorAll('.drag_user');
  106. for (i = 0; i < dragUsers.length; i++) {
  107. dragUsers[i].style.transform = 'translateX(' + scrollLeft + 'px)';
  108. }
  109. }
  110. tableCont.addEventListener('scroll', scrollHandle);
  111. </script>

发表评论

表情:
评论列表 (有 0 条评论,110人围观)

还没有评论,来说两句吧...

相关阅读