Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function onKeyDown(e) {
- if(!kbEnabled) return true;
- e = e || document.parentWindow.event;
- var kc = e.keyCode != null ? e.keyCode : e.charCode;
- if ( kc < 33 || (kc > 40 && (kc != 45 && kc != 46))) return true;
- var value = tagName == "input" ? parseFloat(inp.value) : inp.selectedIndex;
- if(isNaN(value) || value < Math.min(min,max)) value = Math.min(min,max);
- if( kc == 37 || kc == 40 || kc == 46 || kc == 34) {
- // left, down, ins, page down
- if (min < max)
- value -= (e.ctrlKey || kc == 34 ? maxInc : inc)
- else
- value += (e.ctrlKey || kc == 34 ? maxInc : inc)
- } else if( kc == 39 || kc == 38 || kc == 45 || kc == 33) {
- // right, up, del, page up
- if (min < max)
- value += (e.ctrlKey || kc == 33 ? maxInc : inc)
- else
- value -= (e.ctrlKey || kc == 33 ? maxInc : inc)
- } else if( kc == 35 ) {
- // end
- value = Math.max(min,max);
- } else if( kc == 36 ) {
- // home
- value = Math.min(min,max);
- };
- valueToPixels(value);
- callback("update");
- // Opera doesn't let us cancel key events so the up/down arrows and home/end buttons will scroll the screen - which sucks
- return stopEvent(e);
- };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement