Skip to content

Commit 3f01103

Browse files
committed
Add disabled state to range sliders
1 parent 191e77a commit 3f01103

File tree

2 files changed

+21
-6
lines changed

2 files changed

+21
-6
lines changed

js/foundation/foundation.slider.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@
3030
$(this.scope)
3131
.off('.slider')
3232
.on('mousedown.fndtn.slider touchstart.fndtn.slider pointerdown.fndtn.slider',
33-
'[' + self.attr_name() + '] .range-slider-handle', function(e) {
33+
'[' + self.attr_name() + ']:not(.disabled, [disabled]) .range-slider-handle', function(e) {
3434
if (!self.cache.active) {
3535
e.preventDefault();
3636
self.set_active_slider($(e.target));

scss/foundation/components/_range-slider.scss

+20-5
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@ $range-slider-handle-round: $global-rounded !default;
4343
$range-slider-handle-bg-hover-color: scale-color($primary-color, $lightness: -12%) !default;
4444
$range-slider-handle-cursor: pointer !default;
4545

46+
$range-slider-disabled-opacity: 0.7 !default;
4647

4748
//
4849
// @mixins
@@ -66,11 +67,16 @@ $range-slider-handle-cursor: pointer !default;
6667
@mixin range-slider-bar-style(
6768
$bg: true,
6869
$radius: false,
69-
$round: false) {
70-
@if $bg == true { background: $range-slider-bar-bg-color; }
71-
@if $radius == true { @include radius($range-slider-radius); }
72-
@if $round == true { @include radius($range-slider-round); }
70+
$round: false,
71+
$disabled: false) {
72+
@if $bg == true { background: $range-slider-bar-bg-color; }
73+
@if $radius == true { @include radius($range-slider-radius); }
74+
@if $round == true { @include radius($range-slider-round); }
75+
@if $disabled == true {
76+
cursor: $cursor-default-value;
77+
opacity: $range-slider-disabled-opacity;
7378
}
79+
}
7480

7581
@mixin range-slider-bar(
7682
$bg: $range-slider-bar-bg-color,
@@ -92,10 +98,15 @@ $range-slider-handle-cursor: pointer !default;
9298
@mixin range-slider-handle-style(
9399
$bg: true,
94100
$radius: false,
95-
$round: false) {
101+
$round: false,
102+
$disabled: false) {
96103
@if $bg == true { background: $range-slider-handle-bg-color; }
97104
@if $radius == true { @include radius($range-slider-radius); }
98105
@if $round == true { @include radius($range-slider-round); }
106+
@if $disabled == true {
107+
cursor: $cursor-default-value;
108+
opacity: $range-slider-disabled-opacity;
109+
}
99110
&:hover {
100111
background: $range-slider-handle-bg-hover-color;
101112
}
@@ -133,6 +144,10 @@ $range-slider-handle-cursor: pointer !default;
133144
@include range-slider-bar-style($round:true);
134145
.range-slider-handle { @include range-slider-handle-style($round: true); }
135146
}
147+
&.disabled, &[disabled] {
148+
@include range-slider-bar-style($disabled:true);
149+
.range-slider-handle { @include range-slider-handle-style($disabled: true); }
150+
}
136151
}
137152
.range-slider-active-segment {
138153
display: inline-block;

0 commit comments

Comments
 (0)