aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--tests/unit/slider/slider_methods.js16
-rw-r--r--ui/jquery.ui.slider.js6
2 files changed, 20 insertions, 2 deletions
diff --git a/tests/unit/slider/slider_methods.js b/tests/unit/slider/slider_methods.js
index 711c16f2c..37977efb9 100644
--- a/tests/unit/slider/slider_methods.js
+++ b/tests/unit/slider/slider_methods.js
@@ -69,14 +69,26 @@ test("enable", function() {
var expected = $('<div></div>').slider(),
actual = expected.slider('enable');
equals(actual, expected, 'enable is chainable');
- ok(false, "missing test - untested code is broken code.");
+
+ var el = $('<div></div>').slider({ disabled: true });
+ ok(el.hasClass('.ui-disabled'), 'slider has ui-disabled class before enable method call');
+ ok(el.hasClass('.ui-slider-disabled'), 'slider has ui-slider-disabled class before enable method call');
+ el.slider('enable');
+ ok(!el.hasClass('.ui-disabled'), 'slider does not have ui-disabled class after enable method call');
+ ok(!el.hasClass('.ui-slider-disabled'), 'slider does not have ui-slider-disabled class after enable method call');
});
test("disable", function() {
var expected = $('<div></div>').slider(),
actual = expected.slider('disable');
equals(actual, expected, 'disable is chainable');
- ok(false, "missing test - untested code is broken code.");
+
+ var el = $('<div></div>').slider({ disabled: false });
+ ok(!el.hasClass('.ui-disabled'), 'slider does not have ui-disabled class before disabled method call');
+ ok(!el.hasClass('.ui-slider-disabled'), 'slider does not have ui-slider-disabled class before disable method call');
+ el.slider('disable');
+ ok(el.hasClass('.ui-disabled'), 'slider has ui-disabled class after disable method call');
+ ok(el.hasClass('.ui-slider-disabled'), 'slider has ui-slider-disabled class after disable method call');
});
test("value", function() {
diff --git a/ui/jquery.ui.slider.js b/ui/jquery.ui.slider.js
index f2ea5f67e..ca2dad2eb 100644
--- a/ui/jquery.ui.slider.js
+++ b/ui/jquery.ui.slider.js
@@ -29,6 +29,10 @@ $.widget("ui.slider", $.extend({}, $.ui.mouse, {
+ " ui-widget"
+ " ui-widget-content"
+ " ui-corner-all");
+
+ if (o.disabled) {
+ this.element.addClass('ui-slider-disabled ui-disabled');
+ }
this.range = $([]);
@@ -439,8 +443,10 @@ $.widget("ui.slider", $.extend({}, $.ui.mouse, {
this.handles.filter(".ui-state-focus").blur();
this.handles.removeClass("ui-state-hover");
this.handles.attr("disabled", "disabled");
+ this.element.addClass("ui-disabled");
} else {
this.handles.removeAttr("disabled");
+ this.element.removeClass("ui-disabled");
}
case 'orientation':