Merge pull request #348 from AlexDEVpro/master

Fix one problem and add one additional parameter.
pull/349/head
Allan Jardine 7 years ago committed by GitHub
commit 11178dd27f

@ -37,7 +37,7 @@
(function($){ (function($){
var PageResize = function ( dt ) var PageResize = function ( dt, pageResizeManualDelta )
{ {
var table = dt.table(); var table = dt.table();
@ -48,7 +48,8 @@ var PageResize = function ( dt )
footer: $(table.footer()), footer: $(table.footer()),
body: $(table.body()), body: $(table.body()),
container: $(table.container()), container: $(table.container()),
table: $(table.node()) table: $(table.node()),
delta: pageResizeManualDelta
}; };
var host = this.s.host; var host = this.s.host;
@ -71,16 +72,25 @@ PageResize.prototype = {
var rowHeight = $( 'tr', settings.body ).eq(0).height(); var rowHeight = $( 'tr', settings.body ).eq(0).height();
var availableHeight = settings.host.height(); var availableHeight = settings.host.height();
var scrolling = t.header().parentNode !== t.body().parentNode; var scrolling = t.header().parentNode !== t.body().parentNode;
var delta = settings.delta;
// Subtract the height of the header, footer and the elements // Subtract the height of the header, footer and the elements
// surrounding the table // surrounding the table
if ( ! scrolling ) { if ( ! scrolling ) {
if ( t.header() ) {
availableHeight -= settings.header.height(); availableHeight -= settings.header.height();
}
if ( t.footer() ) {
availableHeight -= settings.footer.height(); availableHeight -= settings.footer.height();
} }
}
availableHeight -= offsetTop; availableHeight -= offsetTop;
availableHeight -= settings.container.height() - ( offsetTop + settings.table.height() ); availableHeight -= settings.container.height() - ( offsetTop + settings.table.height() );
if ( !isNaN( parseFloat( delta ) ) && isFinite( delta ) ) {
availableHeight -= delta;
}
var drawRows = Math.floor( availableHeight / rowHeight ); var drawRows = Math.floor( availableHeight / rowHeight );
if ( drawRows !== Infinity && drawRows !== -Infinity && if ( drawRows !== Infinity && drawRows !== -Infinity &&
@ -145,7 +155,7 @@ $(document).on( 'init.dt', function ( e, settings ) {
settings.oInit.pageResize || settings.oInit.pageResize ||
$.fn.dataTable.defaults.pageResize ) $.fn.dataTable.defaults.pageResize )
{ {
new PageResize( api ); new PageResize( api, settings.oInit.pageResizeManualDelta );
} }
} ); } );

@ -1,7 +1 @@
/*! (function(t){var e=function(e,a){var o=e.table();this.s={dt:e,host:t(o.container()).parent(),header:t(o.header()),footer:t(o.footer()),body:t(o.body()),container:t(o.container()),table:t(o.node()),delta:a};var i=this.s.host;"static"===i.css("position")&&i.css("position","relative"),this._attach(),this._size()};e.prototype={_size:function(){var e=this.s,a=e.dt,o=a.table(),i=t(e.table).offset().top,n=t("tr",e.body).eq(0).height(),s=e.host.height(),h=o.header().parentNode!==o.body().parentNode,r=e.delta;h||(o.header()&&(s-=e.header.height()),o.footer()&&(s-=e.footer.height())),s-=i,s-=e.container.height()-(i+e.table.height()),!isNaN(parseFloat(r))&&isFinite(r)&&(s-=r);var d=Math.floor(s/n);d!==1/0&&d!==-(1/0)&&!isNaN(d)&&d>0&&d!==a.page.len()&&a.page.len(d).draw()},_attach:function(){var e=this,a=t("<object/>").css({position:"absolute",top:0,left:0,height:"100%",width:"100%",zIndex:-1}).attr("type","text/html");a[0].onload=function(){var t=this.contentDocument.body,a=t.offsetHeight;this.contentDocument.defaultView.onresize=function(){var o=t.clientHeight||t.offsetHeight;o!==a&&(a=o,e._size())}},a.appendTo(this.s.host).attr("data","about:blank")}},t.fn.dataTable.PageResize=e,t.fn.DataTable.PageResize=e,t(document).on("init.dt",function(a,o){if("dt"===a.namespace){var i=new t.fn.dataTable.Api(o);(t(i.table().node()).hasClass("pageResize")||o.oInit.pageResize||t.fn.dataTable.defaults.pageResize)&&new e(i,o.oInit.pageResizeManualDelta)}})})(jQuery);
PageResize for DataTables v1.0.0
2015 SpryMedia Ltd - datatables.net/license
*/
(function(c){var d=function(a){var b=a.table();this.s={dt:a,host:c(b.container()).parent(),header:c(b.header()),footer:c(b.footer()),body:c(b.body()),container:c(b.container()),table:c(b.node())};a=this.s.host;"static"===a.css("position")&&a.css("position","relative");this._attach();this._size()};d.prototype={_size:function(){var a=this.s,b=a.dt,f=b.table(),g=c(a.table).offset().top,d=c("tr",a.body).eq(0).height(),e=a.host.height();f.header().parentNode===f.body().parentNode&&(e-=a.header.height(),
e-=a.footer.height());e=e-g-(a.container.height()-(g+a.table.height()));a=Math.floor(e/d);Infinity!==a&&(-Infinity!==a&&!isNaN(a)&&0<a&&a!==b.page.len())&&b.page.len(a).draw()},_attach:function(){var a=this,b=c("<object/>").css({position:"absolute",top:0,left:0,height:"100%",width:"100%",zIndex:-1}).attr("type","text/html");b[0].onload=function(){var b=this.contentDocument.body,c=b.offsetHeight;this.contentDocument.defaultView.onresize=function(){var d=b.clientHeight||b.offsetHeight;d!==c&&(c=d,a._size())}};
b.appendTo(this.s.host).attr("data","about:blank")}};c.fn.dataTable.PageResize=d;c.fn.DataTable.PageResize=d;c(document).on("init.dt",function(a,b){if("dt"===a.namespace){var f=new c.fn.dataTable.Api(b);(c(f.table().node()).hasClass("pageResize")||b.oInit.pageResize||c.fn.dataTable.defaults.pageResize)&&new d(f)}})})(jQuery);
Loading…
Cancel
Save