jQuery Knob: A Canvas Based Plugin
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.
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”.

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.