Малый и заглавный кейс в js

У меня есть базовый репетитор по набору текста, встроенный в javascript. Он состоит из двух частей: первая часть содержит текст/урок для ввода, а вторая часть содержит клавиатуру с клавишами.

Я кодирую так:

$(document).on('keyup', function(e){
    if( String.fromCharCode(e.keyCode) == TextCharacter )
        // Character was typed correctly
});

Проблема в том, что он работает для мелких букв. Если урок содержит какой-либо символ в верхнем регистре, он не работает, так как пользователь должен набрать «shift + символ». Есть ли способ проверить, нажата ли клавиша символа при удерживании клавиши Shift?

Спасибо


person D3 K    schedule 08.12.2011    source источник


Ответы (3)


событие (e) имеет два свойства, чтобы проверить, нажат ли shift/ctrl. Свойствам event.shiftKey и event.ctrlKey присваивается значение true, если нажата соответствующая клавиша.

person Madhu Kasic    schedule 08.12.2011

для клавиши Shift вы можете использовать shiftKey:

//like
e.shiftKey
person Sudhir Bastakoti    schedule 08.12.2011

Быстрый поиск «кодов клавиш Javascript» дал следующее: http://www.cambiaresearch.com/articles/15/javascript-char-codes-key-codes

Так что я думаю, вы просто обнаружите, когда сдвиг (код клавиши 16) и символ нажат.

person BrioDan    schedule 08.12.2011