diff options
-rw-r--r-- | tests/unit/slider/events.js | 26 | ||||
-rw-r--r-- | ui/slider.js | 4 |
2 files changed, 27 insertions, 3 deletions
diff --git a/tests/unit/slider/events.js b/tests/unit/slider/events.js index 0d22577f1..db771ec27 100644 --- a/tests/unit/slider/events.js +++ b/tests/unit/slider/events.js @@ -169,7 +169,7 @@ test( "mouse based interaction part two: when handles overlap", function() { }); test( "event data", function() { - expect( 4 ); + expect( 6 ); var slideHandleIndex = 3, values = [ 8, 9, 7, 4 ], @@ -203,6 +203,30 @@ test( "event data", function() { }); handles.eq( slideHandleIndex ).simulate( "drag", { dx: 10 } ); + + element.slider( "destroy" ); + element = $( "#slider1" ).slider({ + min: 0, + max: 100, + value: 1, + slide: function ( event, ui ) { + equal( ui.value, 0, "should pass 0 value if slider reaches it" ); + } + }); + handles = element.find( ".ui-slider-handle" ); + handles.eq( 0 ).simulate( "drag", { dx: -10 } ); + + element.slider( "destroy" ); + element = $( "#slider1" ).slider({ + min: 0, + max: 100, + values: [ 1, 2 ], + slide: function ( event, ui ) { + equal( ui.value, 0, "should pass 0 value if one of handles reaches it" ); + } + }); + handles = element.find( ".ui-slider-handle" ); + handles.eq( 0 ).simulate( "drag", { dx: -10 } ); }); } ); diff --git a/ui/slider.js b/ui/slider.js index a9cec83af..b40a35e66 100644 --- a/ui/slider.js +++ b/ui/slider.js @@ -301,11 +301,11 @@ return $.widget( "ui.slider", $.ui.mouse, { var uiHash = { handle: this.handles[ index ], handleIndex: index, - value: value || this.value() + value: value !== undefined ? value : this.value() }; if ( this._hasMultipleValues() ) { - uiHash.value = value || this.values( index ); + uiHash.value = value !== undefined ? value : this.values( index ); uiHash.values = values || this.values(); } |