Knob is a jQuery plugin that is canvas based and doesn’t use any jpg or png sprites. It has touch, mousewheel, keyboard events implemented.
Usage example
1
2
3
4
5
6
7
8
9
10
11
| < input type = "text" value = "75" class = "dial" > < script > $(".dial").knob( { 'change':function(e){ console.log(e); } } ); </ script > |
Options
Options are provided as attributes ‘data-option’:
1
| < input type = "text" class = "dial" data-min = "-50" data-max = "50" > |
… or in the “knob()” call :
1
2
3
4
| $( ".dial" ).knob({ 'min' :-50 , 'max' :50 }) |
The following options are supported :
Behaviors :
- min : min value || default=0.
- max : max value || default=100.
- stopper : stop at 0 & 100 on keydown/mousewheel || default=true.
- readOnly : disable input and events.
- angleOffset: change the 0 position of the knob (in degree), || default=0.
- min : min value || default=0.
- max : max value || default=100.
- stopper : stop at 0 & 100 on keydown/mousewheel || default=true.
- readOnly : disable input and events.
- angleOffset: change the 0 position of the knob (in degree), || default=0.
UI :
- cursor : display mode “cursor” | default=gauge.
- thickness : gauge thickness.
- width : dial width.
- displayInput : default=true | false=hide input.
- displayPrevious : default=false | true=displays the previous value with transparency.
- fgColor : foreground color.
- bgColor : background color.
- ticks : number of ticks | 0=disable.
- tickColor.
- tickLength.
- tickWidth.
- tickColorizeValues : colorize ticks.
- skin : default | “tron”.
- cursor : display mode “cursor” | default=gauge.
- thickness : gauge thickness.
- width : dial width.
- displayInput : default=true | false=hide input.
- displayPrevious : default=false | true=displays the previous value with transparency.
- fgColor : foreground color.
- bgColor : background color.
- ticks : number of ticks | 0=disable.
- tickColor.
- tickLength.
- tickWidth.
- tickColorizeValues : colorize ticks.
- skin : default | “tron”.
Dynamically configure
1
2
3
| <script> $( '.dial' ).trigger( 'configure' ,{ "min" :10, "max" :40, "fgColor" : "#FF0000" , "skin" : "tron" , "cursor" : true }) </script> |
Tested on Chrome, Safari, Firefox, IE 9.0.