Javascript 边栏折叠时Datatables标题对齐:触发类更改

Javascript 边栏折叠时Datatables标题对齐:触发类更改,javascript,jquery,html,css,datatables,Javascript,Jquery,Html,Css,Datatables,我与scrollY actived和theme一起使用: 问题是边栏折叠时标题对齐 这个问题很普遍,但我尝试的所有解决方案都失败了。 我想调用acquisitionTable.columns.adjust()但是如何捕获折叠和展开事件? 这是侧边栏: <!-- Left side column. contains the logo and sidebar --> <aside class="main-sidebar"> <!-- sidebar: styl

我与scrollY actived和theme一起使用:

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

这个问题很普遍,但我尝试的所有解决方案都失败了。 我想调用
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>
....


管理
5.
....
从文档中(我用调试模式检查),当侧栏折叠时,类
。侧栏折叠
被添加到body标记中。

谢谢

您是否尝试过css
最小宽度
选项,例如:

.dataTables_scrollHead table {
    min-width: 100%;
}
此外,您可能还需要添加:

table-layout: fixed;

目前,我修复了此代码的问题:

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

我曾经遇到过数据表的确切问题,并解决了它。问题是,这是一个css问题,所以为了重现这个问题,我们应该首先看到整个画面。因为,一些css可能是重叠的。我们不能看到所有的东西。我的建议是,您应该将相关的css、一些带有表格的HTML(如果是大数据,则不包括所有表格)和脚本文件放入JSFIDLE或JSBin中,或者在这里使用post editor的
代码片段
。我同意你的观点,因为在我的页面中使用了几个插件,甚至表格都非常复杂。我已经更新了一个可能的解决方案
divW = jQuery("#contentAreaId").width();
setInterval(function(){
    var w = jQuery("#contentAreaId").width();
    if (w != divW) {
        acquisitionTable.columns.adjust();
        divW = w;
    }       
},100);