function bind(elem, type, handler, capture) { type = typeof type === 'string' && type || ''; handler = handler || function () { ; }; if (elem.addEventListener) { elem.addEventListener(type, handler, capture); } else if (elem.attachEvent) { elem.attachEvent('on' + type, handler); } else { elem['on' + type] = handler; } return elem; }; bind(document, 'keydown', function (e) { console.log(keyCode(e)); }); bind(document, 'keypress', function (e) { console.log(keyCode(e)); }); function keyCode(e) { return e.charCode ? e.charCode : e.keyCode; }