Javascript keydown возвращает коды ALT на некоторых компьютерах - PullRequest
0 голосов
/ 16 октября 2019

Использование сканера штрих-кода для сканирования 2D-штрих-кода, чтобы получить значения внутри штрих-кода. Он работает нормально, пока я не нашел систему, на которой он не работает. Поскольку я получаю ALT Codes (ASCII) в событии keydown вместо char.

Код, который я использовал для анализа отсканированного штрих-кода

var completeOGKeys = [];
$(document).on("keydown",function(e) {
    completeOGKeys.push(e.key);
    e.preventDefault();
    e.stopPropagation();
    var keyCode = (e.keyCode ? e.keyCode : e.which);
    if(keyCode == 13){
        console.log(completeOGKeys);
    }
});

1-й выход системы, работающий как задумано

["Shift","@","Control","Shift","J","Enter","Shift","A","Shift","N","Shift","S","Shift","I"," ","6","3","6","0","1","4","0","4","0","0","0","2","Shift","D","Shift","L","0","0","4","1","0","2","8","2","Shift","Z","Shift","C","0","3","2","3","0","0","3","3","Shift","D","Shift","L","Shift","D","Shift","C","Shift","A","Shift","C","Control","Shift","J","Shift","D","Shift","C","Shift","B","Shift","N","Shift","O","Shift","N","Shift","E","Control","Shift","J","Shift","D","Shift","C","Shift","D","Shift","N","Shift","O","Shift","N","Shift","E","Control","Shift","J","Shift","D","Shift","B","Shift","A","1","1","0","7","2","0","1","9","Control","Shift","J","Shift","D","Shift","C","Shift","S","Shift","C","Shift","H","Shift","A","Shift","I","Shift","R","Shift","E","Shift","Z","Control","Shift","J","Shift","D","Shift","A","Shift","C","Shift","M","Shift","O","Shift","N","Shift","I","Shift","C","Shift","A","Control","Shift","J","Shift","D","Shift","A","Shift","D","Shift","A","Shift","N","Shift","N","Shift","E","Shift","T","Shift","T","Shift","E","Control","Shift","J","Shift","D","Shift","B","Shift","D","1","0","1","1","2","0","1","4","Control","Shift","J","Shift","D","Shift","B","Shift","B","1","1","0","7","1","9","8","1","Control","Shift","J","Shift","D","Shift","B","Shift","C","2","Control","Shift","J","Shift","D","Shift","A","Shift","Y","Shift","B","Shift","R","Shift","N","Control","Shift","J","Shift","D","Shift","A","Shift","U","0","6","3"," ","Shift","I","Shift","N","Control","Shift","J","Shift","D","Shift","A","Shift","G","2","5","8","4","8"," ","Shift","J","Shift","U","Shift","N","Shift","I","Shift","P","Shift","E","Shift","R"," ","Shift","S","Shift","T","Control","Shift","J","Shift","D","Shift","A","Shift","I","Shift","L","Shift","O","Shift","M","Shift","A"," ","Shift","L","Shift","I","Shift","N","Shift","D","Shift","A","Control","Shift","J","Shift","D","Shift","A","Shift","J","Shift","C","Shift","A","Control","Shift","J","Shift","D","Shift","A","Shift","K","9","2","3","5","4","0","0","0","0"," "," ","Control","Shift","J","Shift","D","Shift","A","Shift","Q","Shift","D","2","2","9","2","1","1","9","Control","Shift","J","Shift","D","Shift","C","Shift","F","0","7","\/","3","0","\/","2","0","0","9","6","2","6","Shift","R","Shift","B","\/","Shift","A","Shift","A","Shift","F","Shift","D","\/","1","9","Control","Shift","J","Shift","D","Shift","C","Shift","G","Shift","U","Shift","S","Shift","A","Control","Shift","J","Shift","D","Shift","D","Shift","E","Shift","U","Control","Shift","J","Shift","D","Shift","D","Shift","F","Shift","U","Control","Shift","J","Shift","D","Shift","D","Shift","G","Shift","U","Control","Shift","J","Shift","D","Shift","A","Shift","W","1","4","8","Control","Shift","J","Shift","D","Shift","A","Shift","Z","Shift","B","Shift","R","Shift","N","Control","Shift","J","Shift","D","Shift","C","Shift","K","1","4","2","8","6","Shift","D","2","2","9","2","1","1","9","0","4","0","1","Control","Shift","J","Shift","D","Shift","D","Shift","B","0","4","1","6","2","0","1","0","Control","Shift","J","Shift","D","Shift","D","Shift","D","0","Control","Shift","J","Enter","Shift","Z","Shift","C","Shift","Z","Shift","C","Shift","A","Control","Shift","J","Shift","Z","Shift","C","Shift","B","Control","Shift","J","Shift","Z","Shift","C","Shift","C","Shift","B","Shift","R","Shift","N","Control","Shift","J","Shift","Z","Shift","C","Shift","D","Shift","B","Shift","R","Shift","N","Control","Shift","J","Shift","Z","Shift","C","Shift","E","Control","Shift","J","Shift","Z","Shift","C","Shift","F","Control","Shift","J","Enter","Enter"]

2-й системный выход

["Alt","0","6","4","Control","Shift","J","Alt","0","4","8","Alt","0","6","8","Alt","0","6","7","Alt","0","6","5","Alt","0","6","7","Control","Shift","J","Alt","0","6","8","Alt","0","6","7","Alt","0","6","6","Alt","0","7","8","Alt","0","7","9","Alt","0","7","8","Alt","0","6","9","Control","Shift","J","Alt","0","6","8","Alt","0","6","7","Alt","0","6","8","Alt","0","7","8","Alt","0","7","9","Alt","0","7","8","Alt","0","6","9","Control","Shift","J","ArrowRight","Shift","Alt","Insert","Shift","Home","Shift","Shift","Alt","Insert","Shift","Home","Shift","PageUp","Shift","Alt","Insert","Shift","Home","Shift","Shift","Alt","Insert","Shift","Shift","PageUp","Shift","Control","Shift","J","Alt","0","6","8","Alt","0","6","7","Alt","0","6","8","Alt","0","7","8","Alt","0","7","9","Alt","0","7","8","Alt","0","6","9","Control","Shift","J","Alt","0","6","8","Alt","0","6","6","Alt","0","6","5","Alt","0","4","9","Alt","Shift","J","Alt","Alt","0","4","Alt","0","6","7","Alt","0","6","8","Alt","0","7","8","Alt","0","7","9","Alt","0","7","8","Alt","0","6","9","Control","Shift","J","Alt","0","6","8","Alt","0","6","6","Alt","0","6","5","Alt","0","4","9","Alt","0","4","9","Alt","0","4","8","Alt","0","5","5","Alt","0","5","0","Alt","0","4","8","Alt","0","4","9","Alt","0","5","7","Control","Shift","J","Control","Shift","J","Alt","0","6","8","Alt","0","6","6","Alt","0","6","5","Alt","0","4","9","Alt","0","4","9","Alt","0","4","8","Alt","0","5","5","Alt","0","5","0","Alt","0","4","8","Alt","0","4","9","Alt","0","5","7","Control","Shift","J","Alt","0","6","8","Alt","0","6","7","Alt","0","8","3","Alt","0","6","7","Alt","0","7","2","Alt","0","6","5","Alt","0","7","3","Alt","0","8","2","Alt","0","6","9","Alt","0","9","0","Control","Shift","J","Alt","0","6","8","Alt","0","6","5","Alt","0","6","7","Alt","0","7","7","Alt","0","7","9","Alt","0","7","8","Alt","0","7","3","Alt","0","6","7","Alt","0","6","5","Control","Shift","J","Alt","0","6","8","Alt","0","6","5","Alt","0","6","8","Alt","0","6","5","Alt","0","7","8","Alt","0","7","8","Alt","0","6","9","Alt","0","8","4","Alt","0","8","4","Alt","0","6","9","Control","Shift","J","Alt","0","6","8","Alt","0","6","6","Alt","0","6","8","Alt","0","4","9","Alt","0","4","8","Alt","0","4","9","Alt","0","4","9","Alt","0","5","0","Alt","0","4","8","Alt","0","4","9","Alt","0","5","2","Control","Shift","J","Alt","0","6","8","Alt","0","6","6","Alt","0","6","6","Alt","0","4","9","Alt","0","4","9","Alt","0","4","8","Alt","0","5","5","Alt","0","4","9","Alt","0","5","7","Alt","0","5","6","Alt","0","4","9","Control","Shift","J","Alt","0","6","8","Alt","0","6","6","Alt","0","6","7","Alt","0","5","0","Control","Shift","J","Alt","0","6","8","Alt","0","6","5","Alt","0","8","9","Alt","0","6","6","Alt","0","8","2","Alt","0","7","8","Control","Shift","J","Alt","0","6","8","Alt","0","6","5","Alt","0","8","5","Alt","0","4","8","Alt","0","5","4","Alt","0","5","1","Alt","0","4","9","Alt","0","Alt","0","6","5","Alt","0","6","7","Alt","0","Alt","0","5","7","Alt","0","4","8","Alt","0","5","2","Alt","0","4","8","Alt","0","4","9","Control","Shift","J","Alt","0","Alt","0","7","8","Control","Shift","J","Alt","0","9","0","Alt","0","6","7","Alt","0","6","9","Control","Shift","J","Alt","0","9","0","Alt","0","6","7","Alt","0","7","0","Control","Shift","J","Enter","Enter"]

Проблема в том, что 2-ая система возвращает event.key как alt + numpad для ex. @ возвращается как Alt064

Почему это происходит во 2-й системе?

...