javascript - 修复 Bootstrap 表的第一列

标签 javascript css bootstrap-table

我在 this post 中关注@koala_dev 的代码尝试锁定第一列 s 我的表水平滚动。不幸的是,代码对我的表没有影响。我想知道是否有人可以给我一些关于我做错了什么的指示,因为我是编程新手。

这是我的表: http://jsfiddle.net/mademoiselletse/bypbqboe/59/

这是我在 JS 中插入的代码(第 121-133 行):

$(function() {
    var $tableClass = $('.table');
    // Make a clone of our table
    var $fixedColumn = $tableClass.clone().insertBefore($tableClass).addClass('fixed-column');

    // Remove everything except for first column
    $fixedColumn.find('th:not(:first-child),td:not(:first-child)').remove();

    // Match the height of the rows to that of the original table's
    $fixedColumn.find('tr').each(function(i, elem) {
      $(this).height($tableClass.find('tr:eq(' + i + ')').height());
    });
});

这是我插入的 CSS 属性(第 36-47 行):

.table-responsive > .fixed-column {
   position: absolute;
   display: inline-block;
   width: auto;
   border-right: 1px solid #ddd;
}

@media(min-width:768px) {
    .table-responsive>.fixed-column {
        display: none;
    }
}

我唯一偏离 demo code 的地方是我将 $('.table') 定义为 $tableClass 而不是 $table 因为我之前定义了 var $table 作为 $('#table') 。非常感谢您的帮助!

最佳答案

只需将 position:sticky 添加到 th & td first-child

th:first-child, td:first-child
{
  position:sticky;
  left:0px;
  background-color:grey;
}
<link href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.0/css/bootstrap.min.css" rel="stylesheet"/>
<table class="table">
  <tr>
    <th>TIME</th>
    <th>Company</th>
    <th>Company</th>
    <th>Company</th>
    <th>Company</th>
    <th>Company</th>
    <th>Company</th>
    <th>Contact</th>
    <th>Country</th>
  </tr>
  <tr>
    <td>11:40   </td>
    <td>Maria Anders</td>
    <td>Alfreds Futterkiste</td> 
    <td>Maria Anders</td>
    <td>Alfreds Futterkiste</td>
    <td>Maria Anders</td>
    <td>Alfreds Futterkiste</td>
    <td>Maria Anders</td>
    <td>Germany</td>
  </tr>
  <tr>
    <td>11:40   </td>
    <td>Maria Anders</td>
    <td>Alfreds Futterkiste</td>
    <td>Maria Anders</td>
    <td>Alfreds Futterkiste</td>
    <td>Maria Anders</td>
    <td>Centro comercial Moctezuma</td>
    <td>Francisco Chang</td>
    <td>Mexico</td>
  </tr>
  <tr>
    <td>11:40   </td>
    <td>Maria Anders</td>
    <td>Alfreds Futterkiste</td>
    <td>Maria Anders</td>
    <td>Alfreds Futterkiste</td>
    <td>Maria Anders</td>
    <td>Ernst Handel</td>
    <td>Roland Mendel</td>
    <td>Austria</td>
  </tr>
  <tr>
   <td>11:40   </td>
    <td>Maria Anders</td>
    <td>Alfreds Futterkiste</td>
    <td>Maria Anders</td>
    <td>Alfreds Futterkiste</td>
    <td>Maria Anders</td>
    <td>Island Trading</td>
    <td>Helen Bennett</td>
    <td>UK</td>
  </tr>
  <tr>
    <td>11:40   </td>
    <td>Maria Anders</td>
    <td>Alfreds Futterkiste</td>
    <td>Maria Anders</td>
    <td>Alfreds Futterkiste</td>
    <td>Maria Anders</td>
    <td>Laughing Bacchus Winecellars</td>
    <td>Yoshi Tannamuri</td>
    <td>Canada</td>
  </tr>
  <tr>
    <td>11:40   </td>
    <td>Maria Anders</td>
    <td>Alfreds Futterkiste</td>
    <td>Maria Anders</td>
    <td>Alfreds Futterkiste</td>
    <td>Maria Anders</td>
    <td>Magazzini Alimentari Riuniti</td>
    <td>Giovanni Rovelli</td>
    <td>Italy</td>
  </tr>
</table>

关于javascript - 修复 Bootstrap 表的第一列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30449054/

相关文章:

css - Moodle 中的 Bootstrap 表

javascript - 在change()上从文本框值更新JQuery-UI slider

javascript - 如何使用javascript获取svg中<g>标签的中点

html - CSS:按 ctrl + 减号调整背景图像大小

jquery - 如何设置表格的滚动条右侧位置?

javascript - 如何在 bootstrapTable 中渲染自定义 html,但使用 sidePagination 和 url 时?

javascript - 测试链式 catchError 函数的正确方法是什么

asp.net - 奇怪的 Javascript JSON 未定义错误

javascript - CSS 中是否有使页面宽度可变的方法?

html - 鼠标悬停打开子菜单