1function isNumber(n) { 2 return !isNaN(parseFloat(n)) && isFinite(n); 3} 4 5function setFontSize(el) { 6 var fontSize = el.val(); 7 8 if ( isNumber(fontSize) && fontSize >= 0.5 ) { 9 $('body').css({ fontSize: fontSize + 'em' }); 10 } else if ( fontSize ) { 11 el.val('1'); 12 $('body').css({ fontSize: '1em' }); 13 } 14} 15 16$(function() { 17 18 $('#fontSize') 19 .bind('change', function(){ setFontSize($(this)); }) 20 .bind('keyup', function(e){ 21 if (e.keyCode == 27) { 22 $(this).val('1'); 23 $('body').css({ fontSize: '1em' }); 24 } else { 25 setFontSize($(this)); 26 } 27 }); 28 29 $(window) 30 .bind('keyup', function(e){ 31 if (e.keyCode == 27) { 32 $('#fontSize').val('1'); 33 $('body').css({ fontSize: '1em' }); 34 } 35 }); 36 37}); 38