これはひどいナットであった。
私はそれがオーバーフローでデフォルトを上書き まずCSSで作業しました:javascriptのはJQueryで
.ui-jqgrid .ui-jqgrid-sdiv{overflow:visible;}
.ui-jqgrid .ui-jqgrid-hdiv{overflow:visible;}
に隠されたが、私の救助に来た私は、次の
function screenBottom() {
return $(window).scrollTop() + $(window).height();
}
$(window).scroll(function() {
var dataTableTop = dataTable.offset().top;
var dataTableHeight = dataTableTop + dataTable.outerHeight();
var windowTop = $(window).scrollTop();
var windowBottom = screenBottom();
//Scroll down
if (windowTop > dataTableTop - headerTable.height()
&& windowTop < (dataTableHeight - headerTable.height())) {
headerTable.offset({ top: windowTop, left: headerTable.offset().left });
}
//For footer
if (windowBottom > dataTable.offset().top + footerTable.outerHeight()
&& windowBottom < dataTableHeight + footerTable.outerHeight()) {
footerTable.offset({ top: windowBottom - footerTable.outerHeight(), left: footerTable.offset().left });
}
//Re adjust of the movement is too fast
if (windowTop < (dataTableTop - headerTable.height())
&& dataTableTop < (headerTable.offset().top + headerTable.height())) {
headerTable.offset({ top: dataTable.offset().top - headerTable.height(), left: headerTable.offset().left });
}
if (windowBottom > dataTableHeight + footerTable.outerHeight()) {
footerTable.offset({ top: dataTableHeight, left: footerTable.offset().left });
}
});
そしてへの実装しましたウィンドウのサイズを変更しながらフッターとヘッダーを確認する
$(window).resize(function() {
setInitializeHeadersAndFootersPosition();
});
function setInitializeHeadersAndFootersPosition() {
var dataTableTop = dataTable.offset().top;
var dataTableHeight = dataTableTop + dataTable.outerHeight();
var windowTop = $(window).scrollTop();
var windowBottom = screenBottom();
if (windowBottom > dataTableTop && windowBottom < dataTableHeight) {
footerTable.offset({ top: windowBottom - footerTable.outerHeight(), left: footerTable.offset().left });
}
if (footerTable.offset().top < dataTableHeight && windowBottom > dataTableHeight) {
footerTable.offset({ top: dataTableHeight, left: footerTable.offset().left });
}
if (windowTop > dataTableTop && windowTop < dataTableHeight) {
headerTable.offset({ top: windowTop, left: headerTable.offset().left }); //Header does not need the offset
}
}
ん[このポスト](http://stackoverflow.com/questions/6534284/fixed-html-table-header-while-scrolling)あなたの状況を解決したり、それを解決に向けてあなたのアイデアを与えますか? – veeTrain
JQuery TH Float Pluginからいくつかアイデアを得ました。私は3つのテーブルを扱わなければならないので、私はプラグインをカスタマイズしなければならないか、自分自身のものを考え出す必要があるようです。 – Sarath