<!DOCTYPE html> <html> <head> <title>Keyboard test</title> </head> <body> <textarea></textarea> <script> window.result = ""; let textarea = document.querySelector('textarea'); textarea.focus(); textarea.addEventListener('keydown', event => { log('Keydown:', event.key, event.code, event.which, modifiers(event)); }); textarea.addEventListener('keypress', event => { log('Keypress:', event.key, event.code, event.which, event.charCode, modifiers(event)); }); textarea.addEventListener('keyup', event => { log('Keyup:', event.key, event.code, event.which, modifiers(event)); }); function modifiers(event) { let m = []; if (event.altKey) m.push('Alt') if (event.ctrlKey) m.push('Control'); if (event.shiftKey) m.push('Shift') return '[' + m.join(' ') + ']'; } function log(...args) { console.log.apply(console, args); result += args.join(' ') + '\n'; } function getResult() { let temp = result.trim(); result = ""; return temp; } </script> </body> </html>