mirror of
https://github.com/jquery/jquery-ui.git
synced 2025-01-07 20:34:24 +00:00
Slider: Create clone of options.values during _create(). Fixed #8892 - Multiple Sliders have Conflict with options.values.
This commit is contained in:
parent
9cbd4b4222
commit
209443d716
@ -143,8 +143,33 @@ test("step", function() {
|
|||||||
// ok(false, "missing test - untested code is broken code.");
|
// ok(false, "missing test - untested code is broken code.");
|
||||||
//});
|
//});
|
||||||
|
|
||||||
//test("values", function() {
|
test("values", function() {
|
||||||
// ok(false, "missing test - untested code is broken code.");
|
expect( 2 );
|
||||||
//});
|
|
||||||
|
// testing multiple ranges on the same page, the object reference to the values
|
||||||
|
// property is preserved via multiple range elements, so updating options.values
|
||||||
|
// of 1 slider updates options.values of all the others
|
||||||
|
var ranges = $([
|
||||||
|
document.createElement("div"),
|
||||||
|
document.createElement("div")
|
||||||
|
]).slider({
|
||||||
|
range: true,
|
||||||
|
values: [ 25, 75 ]
|
||||||
|
});
|
||||||
|
|
||||||
|
notStrictEqual(
|
||||||
|
ranges.eq(0).data("uiSlider").options.values,
|
||||||
|
ranges.eq(1).data("uiSlider").options.values,
|
||||||
|
"multiple range sliders should not have a reference to the same options.values array"
|
||||||
|
);
|
||||||
|
|
||||||
|
ranges.eq(0).slider("values", 0, 10);
|
||||||
|
|
||||||
|
notEqual(
|
||||||
|
ranges.eq(0).slider("values", 0),
|
||||||
|
ranges.eq(1).slider("values", 0),
|
||||||
|
"the values for multiple sliders should be different"
|
||||||
|
);
|
||||||
|
});
|
||||||
|
|
||||||
})(jQuery);
|
})(jQuery);
|
||||||
|
5
ui/jquery.ui.slider.js
vendored
5
ui/jquery.ui.slider.js
vendored
@ -62,9 +62,10 @@ $.widget( "ui.slider", $.ui.mouse, {
|
|||||||
if ( o.range === true ) {
|
if ( o.range === true ) {
|
||||||
if ( !o.values ) {
|
if ( !o.values ) {
|
||||||
o.values = [ this._valueMin(), this._valueMin() ];
|
o.values = [ this._valueMin(), this._valueMin() ];
|
||||||
}
|
} else if ( o.values.length && o.values.length !== 2 ) {
|
||||||
if ( o.values.length && o.values.length !== 2 ) {
|
|
||||||
o.values = [ o.values[0], o.values[0] ];
|
o.values = [ o.values[0], o.values[0] ];
|
||||||
|
} else if ( $.isArray( o.values ) ) {
|
||||||
|
o.values = o.values.slice(0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user