diff --git a/dist/js/widgets/widget-resizable.min.js b/dist/js/widgets/widget-resizable.min.js index f89abdbd..9a8b0e20 100644 --- a/dist/js/widgets/widget-resizable.min.js +++ b/dist/js/widgets/widget-resizable.min.js @@ -1,2 +1,2 @@ /*! Widget: resizable - updated 1/28/2017 (v2.28.5) */ -!function(a,b){"use strict";var c=a.tablesorter||{};a.extend(c.css,{resizableContainer:"tablesorter-resizable-container",resizableHandle:"tablesorter-resizable-handle",resizableNoSelect:"tablesorter-disableSelection",resizableStorage:"tablesorter-resizable"}),a(function(){var b="";a("head").append(b)}),c.resizable={init:function(b,d){if(!b.$table.hasClass("hasResizable")){b.$table.addClass("hasResizable");var e,f,g,h,i=b.$table,j=i.parent(),k=parseInt(i.css("margin-top"),10),l=d.resizable_vars={useStorage:c.storage&&d.resizable!==!1,$wrap:j,mouseXPosition:0,$target:null,$next:null,overflow:"auto"===j.css("overflow")||"scroll"===j.css("overflow")||"auto"===j.css("overflow-x")||"scroll"===j.css("overflow-x"),storedSizes:[]};for(c.resizableReset(b.table,!0),l.tableWidth=i.width(),l.fullWidth=Math.abs(j.width()-l.tableWidth)<20,l.useStorage&&l.overflow&&(c.storage(b.table,"tablesorter-table-original-css-width",l.tableWidth),h=c.storage(b.table,"tablesorter-table-resized-width")||"auto",c.resizable.setWidth(i,h,!0)),d.resizable_vars.storedSizes=g=(l.useStorage?c.storage(b.table,c.css.resizableStorage):[])||[],c.resizable.setWidths(b,d,g),c.resizable.updateStoredSizes(b,d),d.$resizable_container=a('
').css({top:k}).insertBefore(i),f=0;f').appendTo(d.$resizable_container).attr({"data-column":f,unselectable:"on"}).data("header",e).bind("selectstart",!1);c.resizable.bindings(b,d)}},updateStoredSizes:function(a,b){var c,d,e=a.columns,f=b.resizable_vars;for(f.storedSizes=[],c=0;c0){for(h.storedSizes[h.target]+=k,c.resizable.setWidth(h.$target,h.storedSizes[h.target],!0),f=0;f";a("head").append(b)}),c.resizable={init:function(b,d){if(!b.$table.hasClass("hasResizable")){b.$table.addClass("hasResizable");var e,f,g,h,i=b.$table,j=i.parent(),k=parseInt(i.css("margin-top"),10),l=d.resizable_vars={useStorage:c.storage&&!1!==d.resizable,$wrap:j,mouseXPosition:0,$target:null,$next:null,overflow:"auto"===j.css("overflow")||"scroll"===j.css("overflow")||"auto"===j.css("overflow-x")||"scroll"===j.css("overflow-x"),storedSizes:[]};for(c.resizableReset(b.table,!0),l.tableWidth=i.width(),l.fullWidth=Math.abs(j.width()-l.tableWidth)<20,l.useStorage&&l.overflow&&(c.storage(b.table,"tablesorter-table-original-css-width",l.tableWidth),h=c.storage(b.table,"tablesorter-table-resized-width")||"auto",c.resizable.setWidth(i,h,!0)),d.resizable_vars.storedSizes=g=(l.useStorage?c.storage(b.table,c.css.resizableStorage):[])||[],c.resizable.setWidths(b,d,g),c.resizable.updateStoredSizes(b,d),d.$resizable_container=a('
').css({top:k}).insertBefore(i),f=0;f').appendTo(d.$resizable_container).attr({"data-column":f,unselectable:"on"}).data("header",e).bind("selectstart",!1);c.resizable.bindings(b,d)}},updateStoredSizes:function(a,b){var c,d,e=a.columns,f=b.resizable_vars;for(f.storedSizes=[],c=0;c0){for(h.storedSizes[h.target]+=k,c.resizable.setWidth(h.$target,h.storedSizes[h.target],!0),f=0;f + + + true + When true, the resizable handle will extend into the table footer (v2.28.8). +
+

When true, this option includes the entire height of the table footer. If the table does not include a footer, the resize handle will stop at the last row.

+

If false, the resizable handle will not extend into the table footer.

+
+ + + [ ] @@ -262,6 +273,16 @@ $( 'table' ).trigger( 'resizableUpdate' ); Date + + + First Name + Last Name + Age + Total + Discount + Date + + PeterParker28$9.9920%Jul 6, 2006 8:14 AM JohnHood33$19.9925%Dec 10, 2002 5:14 AM diff --git a/docs/index.html b/docs/index.html index 70467808..231fa140 100644 --- a/docs/index.html +++ b/docs/index.html @@ -505,7 +505,7 @@
  • Print widget (v2.16.4; v2.25.8).
  • Reflow widget (v2.16; v2.19.0).
  • Repeat headers widget (v2.0.5; v2.19.0).
  • -
  • Resizable columns widget (v2.0.23.1; v2.28.5).
  • +
  • Resizable columns widget (v2.0.23.1; v2.28.8).
  • Save sort widget (v2.0.27; v2.24.0).
  • Scroller widget (v2.9; v2.28.5).
  • Beta Sort-to-hash widget (v2.22.4; v2.28.6).
  • @@ -2051,6 +2051,10 @@ $(function(){ // will be included in the last column of the table resizable_addLastColumn: false, + // If this option is set to true, the resizable handle will extend + // into the table footer + resizable_includeFooter: true, + // Set this option to the starting & reset header widths resizable_widths: [], @@ -3854,6 +3858,19 @@ $('table').trigger('search', false);
    Example + + + Boolean + true + Resizable widget: If this option is set to true, the resizable handle will extend into the table footer (v2.28.8). +
    +

    When true, this option includes the entire height of the table footer. If the table does not include a footer, the resize handle will stop at the last row.

    +

    If false, the resizable handle will not extend into the table footer.

    +
    + + + + Array @@ -3904,7 +3921,7 @@ $('table').trigger('search', false);
    - + Boolean false diff --git a/js/widgets/widget-resizable.js b/js/widgets/widget-resizable.js index 5e3f9433..f64d6bcc 100644 --- a/js/widgets/widget-resizable.js +++ b/js/widgets/widget-resizable.js @@ -163,6 +163,10 @@ tableHeight += $this.filter('[style*="height"]').length ? $this.height() : $this.children('table').height(); }); } + + if ( !wo.resizable_includeFooter && c.$table.children('tfoot').length ) { + tableHeight -= c.$table.children('tfoot').height(); + } // subtract out table left position from resizable handles. Fixes #864 startPosition = c.$table.position().left; $handles.each( function() { @@ -333,10 +337,10 @@ options: { resizable : true, // save column widths to storage resizable_addLastColumn : false, + resizable_includeFooter: true, resizable_widths : [], resizable_throttle : false, // set to true (5ms) or any number 0-10 range - resizable_targetLast : false, - resizable_fullWidth : null + resizable_targetLast : false }, init: function(table, thisWidget, c, wo) { ts.resizable.init( c, wo );