【问题标题】:Self-scrolling html table with fixed header带有固定标题的自滚动html表格
【发布时间】:2016-11-24 22:16:57
【问题描述】:

我想制作一个带有固定标题和垂直滚动正文的 html 表格。我知道这已经被其他人实施了,但是这里有一个转折点。表格主体必须自动滚动,而不需要用户使用鼠标滚动(主体从顶部滚动到底部然后返回到顶部),类似于分体式机场起飞板/显示器。我似乎无法做到这一点,目前我正在使用 marquee 标签来做到这一点,这看起来不太好。下面是我的实现:

<marquee behavior="scroll" direction="up" scrollamount="3" >
<table>
    <thead>
      <tr>
         <th>header1</th>
         <th>header2</th>
         <th>header3</th>
         <th>header4</th>
      </tr>
    </thead>
    <tbody>
         <tr>
            <td>cont1</td>
            <td>cont2</td>
            <td>cont3</td>
            <td>cont4</td>
         </tr>
         <tr>
            <td>cont1</td>
            <td>cont2</td>
            <td>cont3</td>
            <td>cont4</td>
         </tr>
         <tr>
            <td>cont1</td>
            <td>cont2</td>
            <td>cont3</td>
            <td>cont4</td>
         </tr>
         <tr>
            <td>cont1</td>
            <td>cont2</td>
            <td>cont3</td>
            <td>cont4</td>
         </tr>
         ...
    </tbody>
</table>

请有人指出如何实现这一点的正确方向(使用 html css 和 jquery)。

【问题讨论】:

  • 您可以使用哪些技术? CSS HTML JavaScript JQuery 等
  • CSS html JavaScript JQuery 可供我使用

标签: jquery html css html-table


【解决方案1】:

试试这个:

<table>
<tr>
  <td>header1</td>
 <td>header2</td>
 <td>header3</td>
 <td>header4</td>
  </tr>
</table>

 <table id="secondtbl" >        
   <tbody>
     <tr>
        <td>cont1</td>
        <td>cont2</td>
        <td>cont3</td>
        <td>cont4</td>
     </tr>
     <tr>
        <td>cont1</td>
        <td>cont2</td>
        <td>cont3</td>
        <td>cont4</td>
     </tr>
     <tr>
        <td>cont1</td>
        <td>cont2</td>
        <td>cont3</td>
        <td>cont4</td>
     </tr>
     <tr>
        <td>cont1</td>
        <td>cont2</td>
        <td>cont3</td>
        <td>cont4</td>
     </tr>
     ...
   </tbody>
</table>

CSS:

table{
 border:1px solid black;
 width:200px;
}

td{
 border:1px solid red;
 padding : 2px;
}
#secondtbl{
 width:35%;
}

这会给你标题和单元格的确切宽度,希望它有用

【讨论】:

  • 在此基础上调整您的要求。
  • 您打开了两个表格标签并关闭了一个?为什么?
  • 它就在那里,它是我错过的对齐方式。谢谢。
  • @Manjuboyz 可能是你的代码运行良好,但为什么你拿两张表这是错误的,因为编码搁浅有一个引导类让它变得简单。
  • 用两张表没有错,OP集中在固定表头上,就是这么干的。
【解决方案2】:
var my_time;
$(document).ready(function() {
pageScroll();
$("#contain").mouseover(function() {
clearTimeout(my_time);
}).mouseout(function() {
pageScroll();
});
});

function pageScroll() {
var objDiv = document.getElementById("contain");
objDiv.scrollTop = objDiv.scrollTop + 1;  
if ((objDiv.scrollTop + 100) == objDiv.scrollHeight) {
objDiv.scrollTop = 0;
  }
my_time = setTimeout('pageScroll()', 25);
}

Demo

【讨论】:

  • 我认为 OP 需要修复标头
  • 不是答案
  • 你可以像这样修复你的标题jsfiddle.net/andrewwhitaker/fj8wMcodepen.io/jgx/pen/wiIGc只需检查有一个类来修复表格标签中的标题。
  • 小提琴不应该选框吗?数据。它什么也没做。
  • @ranjansatpathy 是正文自动滚动吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-01-27
  • 1970-01-01
  • 2013-08-01
  • 2014-04-01
  • 2018-02-27
  • 1970-01-01
  • 2016-10-11
相关资源
最近更新 更多