我们有以下代码(另外,存在插件DataTables)
$('#myTable').dataTable( {
"scrollY": height, <-- auto height here
"scrollCollapse": true,
} );
我不太了解jquery,我对自动更改值有疑问。
我有一个div元素,其中高度是百分比(例如:50%)和 我想以像素为单位获得此高度。当然,随着浏览器窗口的改变,高度会发生变化。
不幸的是,我不知道怎么办,有人在这里可以帮忙吗? (最好是一个例子)
更新1:
我试过那样的
var ch = $('#dataTableWrapper').height() - 110; // I subtracted the value of the height of my static elements in a div
$('#dataTableID').dataTable( {
"scrollY": ch,
"scrollCollapse": true,
} );
$(window).resize(function(){
ch = $('#dataTableWrapper').height() - 110; // same as above
$('.dataTables_scrollBody').css('height', ch);
});
显然它可行,但如果有人有更优雅的解决方案,我会问有关抛出代码的问题。
答案 0 :(得分:0)
你可以这样做:
$( window ).resize(function() {
var scroll = $("#yourDiv").height();
});
答案 1 :(得分:0)
这可能是一个愚蠢的建议,但你只是在寻找一个简单的重构吗?
function getTableHeight() {
return $('#dataTableWrapper').height() - 110;
}
$('#dataTableID').dataTable( {
"scrollY": getTableHeight(),
"scrollCollapse": true,
} );
$(window).resize(function(){
$('.dataTables_scrollBody').css('height', getTableHeight());
});