Событие onkeyup не возвращает набор нажатых клавиш - оно просто возвращает по одной клавише за раз. Кроме того, onkeyup просто срабатывает, если вы действительно отпускаете клавишу, поэтому, если вы хотите знать, когда нажаты две клавиши, вам нужно использовать событие onkeydown .
Для этого создайте глобальную логическую переменную, которая указывает, действительно ли нажата первая кнопка, и если она есть, проверьте, нажата ли вторая клавиша.
Вот пример. Для простоты я использую клавиши a и e.
const AKeycode = 65;
const EKeycode = 69;
let AKeycodeDown = false;
let EKeycodeDown = false;
document.onkeydown = function(e) {
if (e.keyCode == AKeycode) {
AKeycodeDown = true;
}
if (e.keyCode == EKeycode) {
EKeycodeDown = true;
}
if (AKeycodeDown && e.keyCode == EKeycode || EKeycodeDown && e.keyCode == AKeycode) {
AKeycodeDown = false;
EKeycodeDown = false;
alert("A+E pressed");
}
}
document.onkeyup = function(e) {
if (e.keyCode == AKeycode) {
AKeycodeDown = false;
}
if (e.keyCode == EKeycode) {
EKeycodeDown = false;
}
}