<html>
<body>
<script>
var keyDicts = [];
function getActiveModifiers(e) {
let active_modifiers = [];
for (modifier of ["Alt", "AltGraph", "CapsLock", "Control", "Fn",
"FnLock", "Hyper", "Meta", "NumLock", "OS",
"ScrollLock", "Shift", "Super", "Symbol",
"SymbolLock"]) {
if (e.getModifierState(modifier)) {
active_modifiers.push(modifier);
}
}
return active_modifiers;
}
document.addEventListener("keypress", (e) => {
keyDicts.push( { "key" : e.key, "code" : e.code, "type" : e.type, "repeat": e.repeat, "modifiers": getActiveModifiers(e)});
document.title = keyDicts.length;
});
document.addEventListener("keyup", (e) => {
keyDicts.push({ "key" : e.key, "code" : e.code, "type" : e.type, "repeat": e.repeat, "modifiers": getActiveModifiers(e)});
document.title = keyDicts.length;
});
document.addEventListener("keydown", (e) => {
keyDicts.push({ "key" : e.key, "code" : e.code, "type" : e.type, "repeat": e.repeat, "modifiers": getActiveModifiers(e)});
document.title = keyDicts.length;
});
window.onload = function() { document.title = "loaded"; }
</script>
</body>
</html>