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