Кусок из Jquery:
// Add which for key events
if ( !event.which && ((event.charCode || event.charCode === 0) ? event.charCode : event.keyCode) )
event.which = event.charCode || event.keyCode;
str 2745
Дальше по таблице кодов.
Наиболее полную версию видел в MochiKit.