Added Slider component

This commit is contained in:
Keegan
2016-03-10 04:20:50 +11:00
parent 0faa585d5f
commit 0873f5eba2
9 changed files with 307 additions and 1 deletions
+2 -1
View File
@@ -11,5 +11,6 @@ module.exports = {
toggle: require('./toggle'),
radiogroup: require('./radiogroup'),
checkboxgroup: require('./checkboxgroup'),
button: require('./button')
button: require('./button'),
slider: require('./slider')
};
+44
View File
@@ -0,0 +1,44 @@
'use strict';
module.exports = {
name: 'slider',
template: require('../../templates/components/slider.tpl'),
style: require('../../styles/clay/components/slider.scss'),
manipulator: 'slider',
defaults: {
label: '',
description: '',
min: 0,
max: 100,
step: 1,
attributes: {}
},
initialize: function() {
var self = this;
var $value = self.$element.select('.value');
var $valuePad = self.$element.select('.value-pad');
/**
* Sets the value display
* @return {void}
*/
function setValueDisplay() {
var value = self.get();
$value.set('value', value);
$valuePad.set('innerHTML', value);
}
self.on('change', setValueDisplay);
setValueDisplay();
$value.on('|keyup', function() {
$valuePad.set('innerHTML', this.get('value'));
});
$value.on('|change', function() {
self.set(this.get('value'));
setValueDisplay();
});
}
};