是否可以在没有 javascript 的情况下在容器后面剪辑绝对表头?

马特·斯平克斯

我试图在我的表中实现粘性标题。在下面的示例中,是否可以在添加更多 javascript 的情况下剪辑容器后面的标题

$(document).ready(function() {
  $('.grid-body').scroll(function(e) {
    $('thead').css("left", -$(".grid-body").scrollLeft() + 8);
  });
});
.container {
  background-color:#ffcccc;
  width:150px;
}
.grid-header {
  width:100%;
  overflow:hidden;
}
.grid-body {
  height:200px;
  overflow:auto;
}
table {
  border-collapse: collapse;
}
td, th {
  width: 100px;
  min-width: 100px;
  background-color: #e0e0e0;
}
thead {
  background-color:#ccffcc;
  position:absolute;
}
tbody {
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="container">
    <div class="grid-header">
      <table id="callLogExplorer">
        <thead>
          <tr>
            <th>head1</th>
            <th>head2</th>
            <th>head3</th>
          </tr>
        </thead>
      </table>
    </div>
    <div class="grid-body">
      <table>
        <tbody>
          <tr>
            <td>asdfasd fas</td>
            <td>asdfasd fas</td>
            <td>asdfasd fas</td>
          </tr>
          <tr>
            <td>asdfasd fas</td>
            <td>asdfasd fas</td>
            <td>asdfasd fas</td>
          </tr>
          <tr>
            <td>asdfasd fas</td>
            <td>asdfasd fas</td>
            <td>asdfasd fas</td>
          </tr>
          <tr>
            <td>asdfasd fas</td>
            <td>asdfasd fas</td>
            <td>asdfasd fas</td>
          </tr>
          <tr>
            <td>asdfasd fas</td>
            <td>asdfasd fas</td>
            <td>asdfasd fas</td>
          </tr>
          <tr>
            <td>asdfasd fas</td>
            <td>asdfasd fas</td>
            <td>asdfasd fas</td>
          </tr>
          <tr>
            <td>asdfasd fas</td>
            <td>asdfasd fas</td>
            <td>asdfasd fas</td>
          </tr>
          <tr>
            <td>asdfasd fas</td>
            <td>asdfasd fas</td>
            <td>asdfasd fas</td>
          </tr>
          <tr>
            <td>asdfasd fas</td>
            <td>asdfasd fas</td>
            <td>asdfasd fas</td>
          </tr>
          <tr>
            <td>asdfasd fas</td>
            <td>asdfasd fas</td>
            <td>asdfasd fas</td>
          </tr>
          <tr>
            <td>asdfasd fas</td>
            <td>asdfasd fas</td>
            <td>asdfasd fas</td>
          </tr>
          <tr>
            <td>asdfasd fas</td>
            <td>asdfasd fas</td>
            <td>asdfasd fas</td>
          </tr>
        </tbody>
      </table>
    </div>

  </div>

斯文

只需将position: relative添加overflow: hidden到您的容器 div,就您而言,.container并删除您在 JavaScript 中添加的八个像素。

$(document).ready(function() {
  $('.grid-body').scroll(function(e) {
    $('thead').css("left", -$(".grid-body").scrollLeft());
  });
});
.container {
  position: relative;
  background-color: #ffcccc;
  width: 150px;
  overflow: hidden;
}

.grid-header {
  width: 100%;
}

.grid-body {
  height: 200px;
  overflow: auto;
}

table {
  border-collapse: collapse;
}

td,
th {
  width: 100px;
  min-width: 100px;
  background-color: #e0e0e0;
}

thead {
  background-color: #ccffcc;
  position: absolute;
}

tbody {}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="container">
  <div class="grid-header">
    <table id="callLogExplorer">
      <thead>
        <tr>
          <th>head1</th>
          <th>head2</th>
          <th>head3</th>
        </tr>
      </thead>
    </table>
  </div>
  <div class="grid-body">
    <table>
      <tbody>
        <tr>
          <td>asdfasd fas</td>
          <td>asdfasd fas</td>
          <td>asdfasd fas</td>
        </tr>
        <tr>
          <td>asdfasd fas</td>
          <td>asdfasd fas</td>
          <td>asdfasd fas</td>
        </tr>
        <tr>
          <td>asdfasd fas</td>
          <td>asdfasd fas</td>
          <td>asdfasd fas</td>
        </tr>
        <tr>
          <td>asdfasd fas</td>
          <td>asdfasd fas</td>
          <td>asdfasd fas</td>
        </tr>
        <tr>
          <td>asdfasd fas</td>
          <td>asdfasd fas</td>
          <td>asdfasd fas</td>
        </tr>
        <tr>
          <td>asdfasd fas</td>
          <td>asdfasd fas</td>
          <td>asdfasd fas</td>
        </tr>
        <tr>
          <td>asdfasd fas</td>
          <td>asdfasd fas</td>
          <td>asdfasd fas</td>
        </tr>
        <tr>
          <td>asdfasd fas</td>
          <td>asdfasd fas</td>
          <td>asdfasd fas</td>
        </tr>
        <tr>
          <td>asdfasd fas</td>
          <td>asdfasd fas</td>
          <td>asdfasd fas</td>
        </tr>
        <tr>
          <td>asdfasd fas</td>
          <td>asdfasd fas</td>
          <td>asdfasd fas</td>
        </tr>
        <tr>
          <td>asdfasd fas</td>
          <td>asdfasd fas</td>
          <td>asdfasd fas</td>
        </tr>
        <tr>
          <td>asdfasd fas</td>
          <td>asdfasd fas</td>
          <td>asdfasd fas</td>
        </tr>
      </tbody>
    </table>
  </div>

</div>

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Yeoman,Grunt和Bower:是否可以在没有JavaScript文件的情况下安装引导程序?

来自分类Dev

JavaScript是否可以在没有PHP的情况下保存值?

来自分类Dev

是否可以在没有JavaScript的情况下将<img>用作完整的背景图像?

来自分类Dev

是否可以在没有JavaScript的情况下将形式输入类型从文本更改为wtforms中的电子邮件?

来自分类Dev

Mono:是否可以在没有root的情况下在端口80上运行服务?

来自分类Dev

是否可以在没有管理员权限的情况下在Linux上安装Rust?

来自分类Dev

是否可以在没有额外硬件的情况下在Arduino上使用CAN?

来自分类Dev

是否可以在没有家长权限的情况下在视图上设置wrapContent属性?

来自分类Dev

是否可以在没有UITableViewController的情况下在UITableView中定义行的高度?

来自分类Dev

是否可以在没有ssl的情况下在NGINX端口443上运行HTTP / 2?

来自分类Dev

Android是否可以在没有任何库的情况下在应用中读取/打开pdf文件?

来自分类Dev

是否可以在没有管理员权限的情况下在Windows中安装字体?

来自分类Dev

是否可以在没有组框架的情况下在yEd中创建组合对象?

来自分类Dev

是否可以在没有 iPhone 的情况下在 Apple Watch 上显示通知?

来自分类Dev

是否可以在没有 setter 的情况下在属性中设置值?

来自分类Dev

使用 HTML/CSS/JavaScript 在没有搜索输入的情况下隐藏表头

来自分类Dev

是否可以在没有容器或JS的情况下创建具有多个元素的两列?

来自分类Dev

TCPClient是否可以在没有网卡的情况下使用?

来自分类Dev

laravel是否可以在没有mcrypt的情况下工作?

来自分类Dev

是否可以在没有相机的情况下使用Vuforia?

来自分类Dev

AngularJs是否可以在没有引导的情况下工作

来自分类Dev

是否可以在没有 sudo 的情况下使用 docker?

来自分类Dev

是否可以在没有 Groovy 的情况下使用 Jenkins

来自分类Dev

是否可以在没有中间容器的情况下编写STL算法

来自分类Dev

是否可以在没有容器的情况下使用Spring Framework DI?

来自分类Dev

是否可以在没有 DI 容器的情况下使用 Jersey?

来自分类Dev

有没有一种方法可以在没有JavaScript的情况下动态更改内容?

来自分类Dev

是否可以在不使用JavaScript的情况下在窗口调整大小上调整div的大小?

来自分类Dev

是否可以在不使用JavaScript的情况下在窗口调整大小上调整div的大小?

Related 相关文章

  1. 1

    Yeoman,Grunt和Bower:是否可以在没有JavaScript文件的情况下安装引导程序?

  2. 2

    JavaScript是否可以在没有PHP的情况下保存值?

  3. 3

    是否可以在没有JavaScript的情况下将<img>用作完整的背景图像?

  4. 4

    是否可以在没有JavaScript的情况下将形式输入类型从文本更改为wtforms中的电子邮件?

  5. 5

    Mono:是否可以在没有root的情况下在端口80上运行服务?

  6. 6

    是否可以在没有管理员权限的情况下在Linux上安装Rust?

  7. 7

    是否可以在没有额外硬件的情况下在Arduino上使用CAN?

  8. 8

    是否可以在没有家长权限的情况下在视图上设置wrapContent属性?

  9. 9

    是否可以在没有UITableViewController的情况下在UITableView中定义行的高度?

  10. 10

    是否可以在没有ssl的情况下在NGINX端口443上运行HTTP / 2?

  11. 11

    Android是否可以在没有任何库的情况下在应用中读取/打开pdf文件?

  12. 12

    是否可以在没有管理员权限的情况下在Windows中安装字体?

  13. 13

    是否可以在没有组框架的情况下在yEd中创建组合对象?

  14. 14

    是否可以在没有 iPhone 的情况下在 Apple Watch 上显示通知?

  15. 15

    是否可以在没有 setter 的情况下在属性中设置值?

  16. 16

    使用 HTML/CSS/JavaScript 在没有搜索输入的情况下隐藏表头

  17. 17

    是否可以在没有容器或JS的情况下创建具有多个元素的两列?

  18. 18

    TCPClient是否可以在没有网卡的情况下使用?

  19. 19

    laravel是否可以在没有mcrypt的情况下工作?

  20. 20

    是否可以在没有相机的情况下使用Vuforia?

  21. 21

    AngularJs是否可以在没有引导的情况下工作

  22. 22

    是否可以在没有 sudo 的情况下使用 docker?

  23. 23

    是否可以在没有 Groovy 的情况下使用 Jenkins

  24. 24

    是否可以在没有中间容器的情况下编写STL算法

  25. 25

    是否可以在没有容器的情况下使用Spring Framework DI?

  26. 26

    是否可以在没有 DI 容器的情况下使用 Jersey?

  27. 27

    有没有一种方法可以在没有JavaScript的情况下动态更改内容?

  28. 28

    是否可以在不使用JavaScript的情况下在窗口调整大小上调整div的大小?

  29. 29

    是否可以在不使用JavaScript的情况下在窗口调整大小上调整div的大小?

热门标签

归档