jquery - 数据表更改sScrollY

时间:2013-02-04 11:30:18

标签: javascript jquery datatable

我想更改数据表的可滚动区域的大小。

$('#example').dataTable({"sScrollY": 100});
//some stuff..
$('#example').dataTable({"sScrollY":101}); //wrong: cannot reinitialize

5 个答案:

答案 0 :(得分:8)

$('.dataTables_scrollBody').css('height', 400);

答案 1 :(得分:4)

要更改Y Scroll,请使用以下代码

var objDataTable = $('#example').dataTable({"sScrollY" : 100});
objDataTable.fnSettings().oScroll.sY = 101;
objDataTable.fnDraw();

答案 2 :(得分:2)

如果yoy有几个数据表,你可以通过包装器访问每个数据表:

$('#example').dataTable({'sScrollY': 100});
//some stuff..
objDataTable.fnSettings().oScroll.sY = '225px';
$('#example_wrapper').children('.dataTables_scroll').children('.dataTables_scrollBody').css('height', '225px');

答案 3 :(得分:1)

对于jquery.dataTables 1.10.x:

$('div.dataTables_scrollBody').height( 400 );

根据Datatables文档,这是推荐的方法。根据相同的文档,不鼓励使用设置对象,因为它是内部的。

答案 4 :(得分:0)

我必须将两者结合起来解决我的问题。在我的情况下我想做无尽的分页,问题是在窗口调整大小后,dataTables_scrollBody的高度保持固定,所以我必须调整oScroll以用滚动条显示表数据。设置dataTables_scrollBody高度将在窗口大小更改时起作用,但在表重绘后,它将使用旧的sScrollY值回滚,并且Neo的代码修复此问题。 :)

objDataTable.fnSettings().oScroll.sY = 101;
objDataTable.fnDraw();
$('.dataTables_scrollBody').css('height', 400);