我正在尝试启用datatable
并应用slimScroll
它的滚动选项以使滚动条看起来圆滑。到目前为止,我得到了我想做的事情。
很快我就意识到,“如果用户重新调整窗口大小会怎样?”。由于 datatable 和 slimScroll 的设置都配置了固定值,因此 data-table 的高度不会根据视口大小进行调整。
我试图在$(window).resize()
事件的帮助下解决这个问题,但它不起作用。我不擅长 JavaScript 编程。我可能做错了什么,或者必须有其他方法。这是我到目前为止写的代码。
//Data table
var table = $('#material-content').DataTable({
'paging' : false,
'info' : false,
'order' : [[1, 'desc']],
"scrollY" : $(window).height()*0.46 // want to have 46% of viewport
});
// scrolling
var scroller = $('.dataTables_scrollBody').slimScroll({
"height": $(window).height()*0.46
});
$(window).resize(function () {
var tableSettings = table.fnSettings(); // ERROR says: Uncaught TypeError: undefined is not a function
var scrollerSettings = scroller.fnSettings();
tableSettings.scrollY = $(window).height()*0.46;
scrollerSettings.height = $(window).height()*0.46;
tableSettings.fnDraw();
scrollerSettings.fnDraw();
});