【问题标题】:Datatables header align when sidebar is collapsed: trigger class change侧边栏折叠时数据表标题对齐:触发类更改
【发布时间】:2017-04-12 08:09:02
【问题描述】:

我正在使用 datatables 激活 scrollY 和 AdminLTE2 主题:

acquisitionTable = $('#acquisitionsTable').DataTable({
            responsive: true,
//          "bLengthChange": false,
            deferRender:    true,
            scrollY:        '60vh',
            scrollCollapse: true,
            scroller:       true,

问题是侧边栏折叠时标题对齐

这个问题很普遍,但我尝试的所有解决方案都失败了。 我想打电话给acquisitionTable.columns.adjust();,但我怎样才能捕捉到折叠和展开事件? 这是侧边栏:

<!-- Left side column. contains the logo and sidebar -->
<aside class="main-sidebar">
    <!-- sidebar: style can be found in sidebar.less -->
    <section class="sidebar">
        <!-- Sidebar user panel -->
        <div class="user-panel">
            <div class="pull-left image">
                <img th:src="@{/static/assets/dist/img/fca.jpg}" class="img-circle"
                    alt="User Image">
            </div>
            <div class="pull-left info">
                <p sec:authentication="principal.name"></p>
                <i class="fa fa-circle text-success"></i> Online
            </div>
        </div>
        <!-- sidebar menu: : style can be found in sidebar.less -->
        <ul class="sidebar-menu">
            <li class="header">MAIN NAVIGATION</li>
            <li><a th:href="@{/}"> <i class="fa fa-dashboard"></i> <span>Dashboard</span>
            </a></li>
            <li sec:authorize="hasRole('ROLE_ADMIN')" class="treeview"><a
                href="#"> <i class="glyphicon glyphicon-cog"></i> <span>Administration</span>
                    <span class="label label-primary pull-right">5</span>
....

当侧边栏折叠时,从文档(我用调试模式检查它)中,.sidebar-collapse 类被添加到 body 标记中。 谢谢

【问题讨论】:

    标签: javascript jquery html css datatables


    【解决方案1】:

    目前我用这段代码解决了这个问题:

    divW = jQuery("#contentAreaId").width();
    setInterval(function(){
        var w = jQuery("#contentAreaId").width();
        if (w != divW) {
            acquisitionTable.columns.adjust();
            divW = w;
        }       
    },100);
    

    【讨论】:

      【解决方案2】:

      你试过cssmin-width选项吗,比如:

      .dataTables_scrollHead table {
          min-width: 100%;
      }
      

      你也可以添加:

      table-layout: fixed;
      

      【讨论】:

      • 我曾经遇到过 Datatables 的确切问题,并解决了它。问题是,这是一个 css 问题,所以为了重现问题,我们应该先看全图。因为,某些 css 可能会重叠。而我们无法看到这一切。我建议的是,您应该使用帖子编辑器的Code Snippet 将相关的css、一些带有表格的HTML(如果大数据不是所有表格)和脚本文件放入JSFiddle、JSBin 或此处。然后我们就可以知道那里出了什么问题,希望能有所帮助。
      • 我同意你的观点,因为在我的页面中使用了几个插件,甚至表格也很复杂。我已经更新了一个可能的解决方案
      猜你喜欢
      • 2022-01-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-05-29
      • 2018-01-25
      • 2013-10-24
      • 2016-11-14
      相关资源
      最近更新 更多