jquery-tablesorter 1.24.4 → 1.24.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +1 -1
- data/lib/jquery-tablesorter/version.rb +1 -1
- data/vendor/assets/javascripts/jquery-tablesorter/jquery.tablesorter.combined.js +22 -16
- data/vendor/assets/javascripts/jquery-tablesorter/jquery.tablesorter.js +2 -2
- data/vendor/assets/javascripts/jquery-tablesorter/jquery.tablesorter.widgets.js +20 -14
- data/vendor/assets/javascripts/jquery-tablesorter/widgets/widget-resizable.js +3 -3
- data/vendor/assets/javascripts/jquery-tablesorter/widgets/widget-scroller.js +20 -7
- data/vendor/assets/javascripts/jquery-tablesorter/widgets/widget-stickyHeaders.js +16 -10
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 61444f8a86b9edc79884dae59f29bce922491f0244b2d672494a254f0fbf372a
|
4
|
+
data.tar.gz: 8c1581fb748d8ef37ec7cb65ccc43c641b1401278c3877ea7e65c258e9e91756
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 13196f9da306327bb65eab8559568fbfecebac9d7b587f2572ab9b025b1c66c12a1e3996ee465beeb38dd4dbae115c2675c6c519170ffe68293f5daa54acfe7a
|
7
|
+
data.tar.gz: 5f3f9f75e8b31908a08e96d4deab38516e4454a28c36f35cf5f0b41f9f82be0b2f9d74ec8ecc10714bfa23d40d01fb651219d4c554724c76ae1d09b462bedf54
|
data/README.md
CHANGED
@@ -4,7 +4,7 @@
|
|
4
4
|
|
5
5
|
Simple integration of jQuery tablesorter ([Mottie's fork]) into the asset pipeline.
|
6
6
|
|
7
|
-
Current tablesorter version: 2.29.
|
7
|
+
Current tablesorter version: 2.29.6 (2018-02-25) [documentation]
|
8
8
|
|
9
9
|
Any issue associated with the js/css files, please report to [Mottie's fork].
|
10
10
|
|
@@ -4,7 +4,7 @@
|
|
4
4
|
██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██▀▀ ▀▀▀██
|
5
5
|
█████▀ ▀████▀ ██ ██ ▀████▀ ██ ██ ██ ██ ▀████▀ █████▀ ██ ██ █████▀
|
6
6
|
*/
|
7
|
-
/*! tablesorter (FORK) - updated 2018-
|
7
|
+
/*! tablesorter (FORK) - updated 2018-02-25 (v2.29.6)*/
|
8
8
|
/* Includes widgets ( storage,uitheme,columns,filter,stickyHeaders,resizable,saveSort ) */
|
9
9
|
(function(factory) {
|
10
10
|
if (typeof define === 'function' && define.amd) {
|
@@ -16,7 +16,7 @@
|
|
16
16
|
}
|
17
17
|
}(function(jQuery) {
|
18
18
|
|
19
|
-
/*! TableSorter (FORK) v2.29.
|
19
|
+
/*! TableSorter (FORK) v2.29.6 *//*
|
20
20
|
* Client-side table sorting with ease!
|
21
21
|
* @requires jQuery v1.2.6+
|
22
22
|
*
|
@@ -40,7 +40,7 @@
|
|
40
40
|
'use strict';
|
41
41
|
var ts = $.tablesorter = {
|
42
42
|
|
43
|
-
version : '2.29.
|
43
|
+
version : '2.29.6',
|
44
44
|
|
45
45
|
parsers : [],
|
46
46
|
widgets : [],
|
@@ -5333,7 +5333,7 @@
|
|
5333
5333
|
var index, len, $t,
|
5334
5334
|
$table = c.$table,
|
5335
5335
|
// add position: relative to attach element, hopefully it won't cause trouble.
|
5336
|
-
$attach = $(wo.stickyHeaders_attachTo),
|
5336
|
+
$attach = $(wo.stickyHeaders_attachTo || wo.stickyHeaders_appendTo),
|
5337
5337
|
namespace = c.namespace + 'stickyheaders ',
|
5338
5338
|
// element to watch for the scroll event
|
5339
5339
|
$yScroll = $(wo.stickyHeaders_yScroll || wo.stickyHeaders_attachTo || window),
|
@@ -5393,7 +5393,10 @@
|
|
5393
5393
|
});
|
5394
5394
|
}
|
5395
5395
|
},
|
5396
|
-
getLeftPosition = function() {
|
5396
|
+
getLeftPosition = function(yWindow) {
|
5397
|
+
if (yWindow === false && $nestedSticky.length) {
|
5398
|
+
return $table.position().left;
|
5399
|
+
}
|
5397
5400
|
return $attach.length ?
|
5398
5401
|
parseInt($attach.css('padding-left'), 10) || 0 :
|
5399
5402
|
$table.offset().left - parseInt($table.css('margin-left'), 10) - $(window).scrollLeft();
|
@@ -5414,9 +5417,11 @@
|
|
5414
5417
|
offset = $table.offset(),
|
5415
5418
|
stickyOffset = getStickyOffset(c, wo),
|
5416
5419
|
yWindow = $.isWindow( $yScroll[0] ), // $.isWindow needs jQuery 1.4.3
|
5417
|
-
|
5418
|
-
|
5419
|
-
|
5420
|
+
yScroll = yWindow ?
|
5421
|
+
$yScroll.scrollTop() :
|
5422
|
+
// use parent sticky position if nested AND inside of a scrollable element - see #1512
|
5423
|
+
$nestedSticky.length ? parseInt($nestedSticky[0].style.top, 10) : $yScroll.offset().top,
|
5424
|
+
attachTop = $attach.length ? yScroll : $yScroll.scrollTop(),
|
5420
5425
|
captionHeight = wo.stickyHeaders_includeCaption ? 0 : $table.children( 'caption' ).height() || 0,
|
5421
5426
|
scrollTop = attachTop + stickyOffset + nestedStickyTop - captionHeight,
|
5422
5427
|
tableHeight = $table.height() - ($stickyWrap.height() + ($tfoot.height() || 0)) - captionHeight,
|
@@ -5430,12 +5435,14 @@
|
|
5430
5435
|
cssSettings.top = yWindow ? scrollTop - $attach.offset().top : $attach.scrollTop();
|
5431
5436
|
}
|
5432
5437
|
// adjust when scrolling horizontally - fixes issue #143
|
5433
|
-
tmp = getLeftPosition();
|
5438
|
+
tmp = getLeftPosition(yWindow);
|
5434
5439
|
if (tmp !== parseInt($stickyWrap.css('left'), 10)) {
|
5435
5440
|
needsUpdating = true;
|
5436
5441
|
cssSettings.left = tmp;
|
5437
5442
|
}
|
5438
|
-
cssSettings.top = ( cssSettings.top || 0 ) +
|
5443
|
+
cssSettings.top = ( cssSettings.top || 0 ) +
|
5444
|
+
// If nested AND inside of a scrollable element, only add parent sticky height
|
5445
|
+
(!yWindow && $nestedSticky.length ? $nestedSticky.height() : stickyOffset + nestedStickyTop);
|
5439
5446
|
if (needsUpdating) {
|
5440
5447
|
$stickyWrap
|
5441
5448
|
.removeClass( ts.css.stickyVis + ' ' + ts.css.stickyHide )
|
@@ -5456,8 +5463,8 @@
|
|
5456
5463
|
if ($stickyTable.attr('id')) { $stickyTable[0].id += wo.stickyHeaders_cloneId; }
|
5457
5464
|
// clear out cloned table, except for sticky header
|
5458
5465
|
// include caption & filter row (fixes #126 & #249) - don't remove cells to get correct cell indexing
|
5459
|
-
$stickyTable.find('thead:gt(0), tr.sticky-false').hide();
|
5460
|
-
$stickyTable.find('tbody, tfoot').remove();
|
5466
|
+
$stickyTable.find('> thead:gt(0), tr.sticky-false').hide();
|
5467
|
+
$stickyTable.find('> tbody, > tfoot').remove();
|
5461
5468
|
$stickyTable.find('caption').toggle(wo.stickyHeaders_includeCaption);
|
5462
5469
|
// issue #172 - find td/th in sticky header
|
5463
5470
|
$stickyCells = $stickyThead.children().children();
|
@@ -5489,7 +5496,6 @@
|
|
5489
5496
|
c.onRenderHeader.apply( $t.eq( index ), [ index, c, $stickyTable ] );
|
5490
5497
|
}
|
5491
5498
|
}
|
5492
|
-
|
5493
5499
|
// make it sticky!
|
5494
5500
|
$xScroll.add($yScroll)
|
5495
5501
|
.unbind( ('scroll resize '.split(' ').join( namespace )).replace(/\s+/g, ' ') )
|
@@ -5560,7 +5566,7 @@
|
|
5560
5566
|
|
5561
5567
|
})(jQuery, window);
|
5562
5568
|
|
5563
|
-
/*! Widget: resizable - updated
|
5569
|
+
/*! Widget: resizable - updated 2018-02-14 (v2.29.6) */
|
5564
5570
|
/*jshint browser:true, jquery:true, unused:false */
|
5565
5571
|
;(function ($, window) {
|
5566
5572
|
'use strict';
|
@@ -5951,7 +5957,7 @@
|
|
5951
5957
|
if ( vars.overflow && vars.tableWidth ) {
|
5952
5958
|
ts.resizable.setWidth( c.$table, vars.tableWidth, true );
|
5953
5959
|
if ( vars.useStorage ) {
|
5954
|
-
ts.storage( table, 'tablesorter-table-resized-width',
|
5960
|
+
ts.storage( table, 'tablesorter-table-resized-width', vars.tableWidth );
|
5955
5961
|
}
|
5956
5962
|
}
|
5957
5963
|
for ( index = 0; index < c.columns; index++ ) {
|
@@ -5967,7 +5973,7 @@
|
|
5967
5973
|
// reset stickyHeader widths
|
5968
5974
|
c.$table.triggerHandler( 'stickyHeadersUpdate' );
|
5969
5975
|
if ( ts.storage && !refreshing ) {
|
5970
|
-
ts.storage( this, ts.css.resizableStorage,
|
5976
|
+
ts.storage( this, ts.css.resizableStorage, [] );
|
5971
5977
|
}
|
5972
5978
|
}
|
5973
5979
|
});
|
@@ -1,4 +1,4 @@
|
|
1
|
-
/*! TableSorter (FORK) v2.29.
|
1
|
+
/*! TableSorter (FORK) v2.29.6 *//*
|
2
2
|
* Client-side table sorting with ease!
|
3
3
|
* @requires jQuery v1.2.6+
|
4
4
|
*
|
@@ -22,7 +22,7 @@
|
|
22
22
|
'use strict';
|
23
23
|
var ts = $.tablesorter = {
|
24
24
|
|
25
|
-
version : '2.29.
|
25
|
+
version : '2.29.6',
|
26
26
|
|
27
27
|
parsers : [],
|
28
28
|
widgets : [],
|
@@ -4,7 +4,7 @@
|
|
4
4
|
██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██▀▀ ▀▀▀██
|
5
5
|
█████▀ ▀████▀ ██ ██ ▀████▀ ██ ██ ██ ██ ▀████▀ █████▀ ██ ██ █████▀
|
6
6
|
*/
|
7
|
-
/*! tablesorter (FORK) - updated 2018-
|
7
|
+
/*! tablesorter (FORK) - updated 2018-02-25 (v2.29.6)*/
|
8
8
|
/* Includes widgets ( storage,uitheme,columns,filter,stickyHeaders,resizable,saveSort ) */
|
9
9
|
(function(factory) {
|
10
10
|
if (typeof define === 'function' && define.amd) {
|
@@ -2453,7 +2453,7 @@
|
|
2453
2453
|
var index, len, $t,
|
2454
2454
|
$table = c.$table,
|
2455
2455
|
// add position: relative to attach element, hopefully it won't cause trouble.
|
2456
|
-
$attach = $(wo.stickyHeaders_attachTo),
|
2456
|
+
$attach = $(wo.stickyHeaders_attachTo || wo.stickyHeaders_appendTo),
|
2457
2457
|
namespace = c.namespace + 'stickyheaders ',
|
2458
2458
|
// element to watch for the scroll event
|
2459
2459
|
$yScroll = $(wo.stickyHeaders_yScroll || wo.stickyHeaders_attachTo || window),
|
@@ -2513,7 +2513,10 @@
|
|
2513
2513
|
});
|
2514
2514
|
}
|
2515
2515
|
},
|
2516
|
-
getLeftPosition = function() {
|
2516
|
+
getLeftPosition = function(yWindow) {
|
2517
|
+
if (yWindow === false && $nestedSticky.length) {
|
2518
|
+
return $table.position().left;
|
2519
|
+
}
|
2517
2520
|
return $attach.length ?
|
2518
2521
|
parseInt($attach.css('padding-left'), 10) || 0 :
|
2519
2522
|
$table.offset().left - parseInt($table.css('margin-left'), 10) - $(window).scrollLeft();
|
@@ -2534,9 +2537,11 @@
|
|
2534
2537
|
offset = $table.offset(),
|
2535
2538
|
stickyOffset = getStickyOffset(c, wo),
|
2536
2539
|
yWindow = $.isWindow( $yScroll[0] ), // $.isWindow needs jQuery 1.4.3
|
2537
|
-
|
2538
|
-
|
2539
|
-
|
2540
|
+
yScroll = yWindow ?
|
2541
|
+
$yScroll.scrollTop() :
|
2542
|
+
// use parent sticky position if nested AND inside of a scrollable element - see #1512
|
2543
|
+
$nestedSticky.length ? parseInt($nestedSticky[0].style.top, 10) : $yScroll.offset().top,
|
2544
|
+
attachTop = $attach.length ? yScroll : $yScroll.scrollTop(),
|
2540
2545
|
captionHeight = wo.stickyHeaders_includeCaption ? 0 : $table.children( 'caption' ).height() || 0,
|
2541
2546
|
scrollTop = attachTop + stickyOffset + nestedStickyTop - captionHeight,
|
2542
2547
|
tableHeight = $table.height() - ($stickyWrap.height() + ($tfoot.height() || 0)) - captionHeight,
|
@@ -2550,12 +2555,14 @@
|
|
2550
2555
|
cssSettings.top = yWindow ? scrollTop - $attach.offset().top : $attach.scrollTop();
|
2551
2556
|
}
|
2552
2557
|
// adjust when scrolling horizontally - fixes issue #143
|
2553
|
-
tmp = getLeftPosition();
|
2558
|
+
tmp = getLeftPosition(yWindow);
|
2554
2559
|
if (tmp !== parseInt($stickyWrap.css('left'), 10)) {
|
2555
2560
|
needsUpdating = true;
|
2556
2561
|
cssSettings.left = tmp;
|
2557
2562
|
}
|
2558
|
-
cssSettings.top = ( cssSettings.top || 0 ) +
|
2563
|
+
cssSettings.top = ( cssSettings.top || 0 ) +
|
2564
|
+
// If nested AND inside of a scrollable element, only add parent sticky height
|
2565
|
+
(!yWindow && $nestedSticky.length ? $nestedSticky.height() : stickyOffset + nestedStickyTop);
|
2559
2566
|
if (needsUpdating) {
|
2560
2567
|
$stickyWrap
|
2561
2568
|
.removeClass( ts.css.stickyVis + ' ' + ts.css.stickyHide )
|
@@ -2576,8 +2583,8 @@
|
|
2576
2583
|
if ($stickyTable.attr('id')) { $stickyTable[0].id += wo.stickyHeaders_cloneId; }
|
2577
2584
|
// clear out cloned table, except for sticky header
|
2578
2585
|
// include caption & filter row (fixes #126 & #249) - don't remove cells to get correct cell indexing
|
2579
|
-
$stickyTable.find('thead:gt(0), tr.sticky-false').hide();
|
2580
|
-
$stickyTable.find('tbody, tfoot').remove();
|
2586
|
+
$stickyTable.find('> thead:gt(0), tr.sticky-false').hide();
|
2587
|
+
$stickyTable.find('> tbody, > tfoot').remove();
|
2581
2588
|
$stickyTable.find('caption').toggle(wo.stickyHeaders_includeCaption);
|
2582
2589
|
// issue #172 - find td/th in sticky header
|
2583
2590
|
$stickyCells = $stickyThead.children().children();
|
@@ -2609,7 +2616,6 @@
|
|
2609
2616
|
c.onRenderHeader.apply( $t.eq( index ), [ index, c, $stickyTable ] );
|
2610
2617
|
}
|
2611
2618
|
}
|
2612
|
-
|
2613
2619
|
// make it sticky!
|
2614
2620
|
$xScroll.add($yScroll)
|
2615
2621
|
.unbind( ('scroll resize '.split(' ').join( namespace )).replace(/\s+/g, ' ') )
|
@@ -2680,7 +2686,7 @@
|
|
2680
2686
|
|
2681
2687
|
})(jQuery, window);
|
2682
2688
|
|
2683
|
-
/*! Widget: resizable - updated
|
2689
|
+
/*! Widget: resizable - updated 2018-02-14 (v2.29.6) */
|
2684
2690
|
/*jshint browser:true, jquery:true, unused:false */
|
2685
2691
|
;(function ($, window) {
|
2686
2692
|
'use strict';
|
@@ -3071,7 +3077,7 @@
|
|
3071
3077
|
if ( vars.overflow && vars.tableWidth ) {
|
3072
3078
|
ts.resizable.setWidth( c.$table, vars.tableWidth, true );
|
3073
3079
|
if ( vars.useStorage ) {
|
3074
|
-
ts.storage( table, 'tablesorter-table-resized-width',
|
3080
|
+
ts.storage( table, 'tablesorter-table-resized-width', vars.tableWidth );
|
3075
3081
|
}
|
3076
3082
|
}
|
3077
3083
|
for ( index = 0; index < c.columns; index++ ) {
|
@@ -3087,7 +3093,7 @@
|
|
3087
3093
|
// reset stickyHeader widths
|
3088
3094
|
c.$table.triggerHandler( 'stickyHeadersUpdate' );
|
3089
3095
|
if ( ts.storage && !refreshing ) {
|
3090
|
-
ts.storage( this, ts.css.resizableStorage,
|
3096
|
+
ts.storage( this, ts.css.resizableStorage, [] );
|
3091
3097
|
}
|
3092
3098
|
}
|
3093
3099
|
});
|
@@ -1,4 +1,4 @@
|
|
1
|
-
/*! Widget: resizable - updated
|
1
|
+
/*! Widget: resizable - updated 2018-02-14 (v2.29.6) */
|
2
2
|
/*jshint browser:true, jquery:true, unused:false */
|
3
3
|
;(function ($, window) {
|
4
4
|
'use strict';
|
@@ -389,7 +389,7 @@
|
|
389
389
|
if ( vars.overflow && vars.tableWidth ) {
|
390
390
|
ts.resizable.setWidth( c.$table, vars.tableWidth, true );
|
391
391
|
if ( vars.useStorage ) {
|
392
|
-
ts.storage( table, 'tablesorter-table-resized-width',
|
392
|
+
ts.storage( table, 'tablesorter-table-resized-width', vars.tableWidth );
|
393
393
|
}
|
394
394
|
}
|
395
395
|
for ( index = 0; index < c.columns; index++ ) {
|
@@ -405,7 +405,7 @@
|
|
405
405
|
// reset stickyHeader widths
|
406
406
|
c.$table.triggerHandler( 'stickyHeadersUpdate' );
|
407
407
|
if ( ts.storage && !refreshing ) {
|
408
|
-
ts.storage( this, ts.css.resizableStorage,
|
408
|
+
ts.storage( this, ts.css.resizableStorage, [] );
|
409
409
|
}
|
410
410
|
}
|
411
411
|
});
|
@@ -745,12 +745,18 @@
|
|
745
745
|
tsScroller = ts.scroller,
|
746
746
|
fixedColumns = wo.scroller_fixedColumns,
|
747
747
|
// get dimensions
|
748
|
+
getDim = function ($el, name, deflt) {
|
749
|
+
return parseInt( $el.css(name) || '', 10 ) || deflt || 0;
|
750
|
+
},
|
748
751
|
$temp = $table.find( 'tbody td' ),
|
749
|
-
borderRightWidth =
|
750
|
-
borderSpacing =
|
751
|
-
totalWidth =
|
752
|
-
|
753
|
-
|
752
|
+
borderRightWidth = getDim( $temp, 'border-right-width', 1 ),
|
753
|
+
borderSpacing = getDim( $temp, 'border-spacing', 0 ),
|
754
|
+
totalWidth = getDim( $table, 'padding-left' ) +
|
755
|
+
getDim( $table, 'padding-right' ) +
|
756
|
+
// include table left & row left border
|
757
|
+
getDim( $table, 'border-left-width', 1 ) * 2 +
|
758
|
+
getDim( $table, 'border-right-width', 1 ) -
|
759
|
+
borderRightWidth + borderSpacing / 2,
|
754
760
|
widths = wo.scroller_calcWidths;
|
755
761
|
|
756
762
|
ts.scroller.removeFixed( c, wo, false );
|
@@ -761,7 +767,7 @@
|
|
761
767
|
}
|
762
768
|
|
763
769
|
// set fixed column width
|
764
|
-
totalWidth = totalWidth + borderRightWidth * 2
|
770
|
+
totalWidth = totalWidth + borderRightWidth * 2;
|
765
771
|
tsScroller.setWidth( $fixedColumn.add( $fixedColumn.children() ), totalWidth );
|
766
772
|
tsScroller.setWidth( $fixedColumn.children().children( 'table' ), totalWidth );
|
767
773
|
|
@@ -799,7 +805,6 @@
|
|
799
805
|
.css( 'width', totalWidth + adj );
|
800
806
|
}
|
801
807
|
|
802
|
-
$fixedColumn.removeClass( tscss.scrollerHideElement );
|
803
808
|
for ( index = 0; index < fixedColumns; index++ ) {
|
804
809
|
temp = ':nth-child(' + ( index + 1 ) + ')';
|
805
810
|
$wrapper
|
@@ -808,6 +813,14 @@
|
|
808
813
|
.find( 'th' + temp + ', td' + temp + ', col' + temp )
|
809
814
|
.addClass( tscss.scrollerHideColumn );
|
810
815
|
}
|
816
|
+
$fixedColumn
|
817
|
+
.removeClass( tscss.scrollerHideElement )
|
818
|
+
.find('colgroup')
|
819
|
+
.each(function() {
|
820
|
+
$(this)
|
821
|
+
.find('col:gt(' + (fixedColumns - 1) + ')')
|
822
|
+
.addClass( tscss.scrollerHideElement );
|
823
|
+
});
|
811
824
|
|
812
825
|
totalWidth = totalWidth - borderRightWidth;
|
813
826
|
temp = $tableWrap.parent().innerWidth() - totalWidth;
|
@@ -90,7 +90,7 @@
|
|
90
90
|
var index, len, $t,
|
91
91
|
$table = c.$table,
|
92
92
|
// add position: relative to attach element, hopefully it won't cause trouble.
|
93
|
-
$attach = $(wo.stickyHeaders_attachTo),
|
93
|
+
$attach = $(wo.stickyHeaders_attachTo || wo.stickyHeaders_appendTo),
|
94
94
|
namespace = c.namespace + 'stickyheaders ',
|
95
95
|
// element to watch for the scroll event
|
96
96
|
$yScroll = $(wo.stickyHeaders_yScroll || wo.stickyHeaders_attachTo || window),
|
@@ -150,7 +150,10 @@
|
|
150
150
|
});
|
151
151
|
}
|
152
152
|
},
|
153
|
-
getLeftPosition = function() {
|
153
|
+
getLeftPosition = function(yWindow) {
|
154
|
+
if (yWindow === false && $nestedSticky.length) {
|
155
|
+
return $table.position().left;
|
156
|
+
}
|
154
157
|
return $attach.length ?
|
155
158
|
parseInt($attach.css('padding-left'), 10) || 0 :
|
156
159
|
$table.offset().left - parseInt($table.css('margin-left'), 10) - $(window).scrollLeft();
|
@@ -171,9 +174,11 @@
|
|
171
174
|
offset = $table.offset(),
|
172
175
|
stickyOffset = getStickyOffset(c, wo),
|
173
176
|
yWindow = $.isWindow( $yScroll[0] ), // $.isWindow needs jQuery 1.4.3
|
174
|
-
|
175
|
-
|
176
|
-
|
177
|
+
yScroll = yWindow ?
|
178
|
+
$yScroll.scrollTop() :
|
179
|
+
// use parent sticky position if nested AND inside of a scrollable element - see #1512
|
180
|
+
$nestedSticky.length ? parseInt($nestedSticky[0].style.top, 10) : $yScroll.offset().top,
|
181
|
+
attachTop = $attach.length ? yScroll : $yScroll.scrollTop(),
|
177
182
|
captionHeight = wo.stickyHeaders_includeCaption ? 0 : $table.children( 'caption' ).height() || 0,
|
178
183
|
scrollTop = attachTop + stickyOffset + nestedStickyTop - captionHeight,
|
179
184
|
tableHeight = $table.height() - ($stickyWrap.height() + ($tfoot.height() || 0)) - captionHeight,
|
@@ -187,12 +192,14 @@
|
|
187
192
|
cssSettings.top = yWindow ? scrollTop - $attach.offset().top : $attach.scrollTop();
|
188
193
|
}
|
189
194
|
// adjust when scrolling horizontally - fixes issue #143
|
190
|
-
tmp = getLeftPosition();
|
195
|
+
tmp = getLeftPosition(yWindow);
|
191
196
|
if (tmp !== parseInt($stickyWrap.css('left'), 10)) {
|
192
197
|
needsUpdating = true;
|
193
198
|
cssSettings.left = tmp;
|
194
199
|
}
|
195
|
-
cssSettings.top = ( cssSettings.top || 0 ) +
|
200
|
+
cssSettings.top = ( cssSettings.top || 0 ) +
|
201
|
+
// If nested AND inside of a scrollable element, only add parent sticky height
|
202
|
+
(!yWindow && $nestedSticky.length ? $nestedSticky.height() : stickyOffset + nestedStickyTop);
|
196
203
|
if (needsUpdating) {
|
197
204
|
$stickyWrap
|
198
205
|
.removeClass( ts.css.stickyVis + ' ' + ts.css.stickyHide )
|
@@ -213,8 +220,8 @@
|
|
213
220
|
if ($stickyTable.attr('id')) { $stickyTable[0].id += wo.stickyHeaders_cloneId; }
|
214
221
|
// clear out cloned table, except for sticky header
|
215
222
|
// include caption & filter row (fixes #126 & #249) - don't remove cells to get correct cell indexing
|
216
|
-
$stickyTable.find('thead:gt(0), tr.sticky-false').hide();
|
217
|
-
$stickyTable.find('tbody, tfoot').remove();
|
223
|
+
$stickyTable.find('> thead:gt(0), tr.sticky-false').hide();
|
224
|
+
$stickyTable.find('> tbody, > tfoot').remove();
|
218
225
|
$stickyTable.find('caption').toggle(wo.stickyHeaders_includeCaption);
|
219
226
|
// issue #172 - find td/th in sticky header
|
220
227
|
$stickyCells = $stickyThead.children().children();
|
@@ -246,7 +253,6 @@
|
|
246
253
|
c.onRenderHeader.apply( $t.eq( index ), [ index, c, $stickyTable ] );
|
247
254
|
}
|
248
255
|
}
|
249
|
-
|
250
256
|
// make it sticky!
|
251
257
|
$xScroll.add($yScroll)
|
252
258
|
.unbind( ('scroll resize '.split(' ').join( namespace )).replace(/\s+/g, ' ') )
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: jquery-tablesorter
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.24.
|
4
|
+
version: 1.24.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jun Lin
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2018-
|
12
|
+
date: 2018-02-25 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: railties
|
@@ -184,7 +184,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
184
184
|
version: '0'
|
185
185
|
requirements: []
|
186
186
|
rubyforge_project:
|
187
|
-
rubygems_version: 2.7.
|
187
|
+
rubygems_version: 2.7.6
|
188
188
|
signing_key:
|
189
189
|
specification_version: 4
|
190
190
|
summary: Simple integration of jquery-tablesorter (Mottie's fork) into the Rails asset
|