diff options
| author | Pierre Schmitz <pierre@archlinux.de> | 2013-12-08 09:55:49 +0100 |
|---|---|---|
| committer | Pierre Schmitz <pierre@archlinux.de> | 2013-12-08 09:55:49 +0100 |
| commit | 4ac9fa081a7c045f6a9f1cfc529d82423f485b2e (patch) | |
| tree | af68743f2f4a47d13f2b0eb05f5c4aaf86d8ea37 /resources/jquery/jquery.checkboxShiftClick.js | |
| parent | af4da56f1ad4d3ef7b06557bae365da2ea27a897 (diff) | |
Update to MediaWiki 1.22.0
Diffstat (limited to 'resources/jquery/jquery.checkboxShiftClick.js')
| -rw-r--r-- | resources/jquery/jquery.checkboxShiftClick.js | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/resources/jquery/jquery.checkboxShiftClick.js b/resources/jquery/jquery.checkboxShiftClick.js index aced0633..b2065665 100644 --- a/resources/jquery/jquery.checkboxShiftClick.js +++ b/resources/jquery/jquery.checkboxShiftClick.js @@ -15,11 +15,17 @@ $box.click( function ( e ) { // And one has been clicked before... if ( prevCheckbox !== null && e.shiftKey ) { - // Check or uncheck this one and all in-between checkboxes - $box.slice( - Math.min( $box.index( prevCheckbox ), $box.index( e.target ) ), - Math.max( $box.index( prevCheckbox ), $box.index( e.target ) ) + 1 - ).prop( 'checked', !!e.target.checked ); + // Check or uncheck this one and all in-between checkboxes, + // except for disabled ones + $box + .slice( + Math.min( $box.index( prevCheckbox ), $box.index( e.target ) ), + Math.max( $box.index( prevCheckbox ), $box.index( e.target ) ) + 1 + ) + .filter( function () { + return !this.disabled; + } ) + .prop( 'checked', !!e.target.checked ); } // Either way, update the prevCheckbox variable to the one clicked now prevCheckbox = e.target; |
