Как определить, нажата ли заглавная буква (верхний регистр) с помощью Javascript и jQuery

К сожалению, вы не можете обнаружить напрямую с помощью Javascript, когда нажата кнопка Caps Lock, так как он не будет обнаружен. Тем не менее, вы все еще можете знать, если вставленный текст в верхнем регистре, чтобы предупредить пользователя, что включена блокировка прописных букв.

Для обоих наших методов (javascript и jQuery) мы будем использовать следующую функцию для обработки, если нажатая кнопка возвращает символ в верхнем регистре.

/**
* Check if the keyevent has been triggered with uppercase.
*
* @param {Object} e A keypress event
* @returns {Boolean} isCapsLock
*/
function isCapsLock(e){
e = (e) ? e : window.event;
var charCode = false;
if (e.which) {
charCode = e.which;
} else if (e.keyCode) {
charCode = e.keyCode;
}
var shifton = false;
if (e.shiftKey) {
shifton = e.shiftKey;
} else if (e.modifiers) {
shifton = !!(e.modifiers & 4);
}
if (charCode >= 97 && charCode = 65 && charCode <= 90 && !shifton) {
return true;
}
return false;
}

Методы Javascript

isCapsLock метод, ожидает событие, созданное событием нажатия клавиши. Используйте следующий код, чтобы узнать, генерируется ли событие, когда включена функция Caps Lock:

document.getElementById("myCustomId").addEventListener("keypress",function(event){
if(isCapsLock(event)){
// Uppercase
}else{
// Lowercase
}
},false);

Поиграйте со следующей скрипкой:

метод jQuery

Как уже было сказано, isCapsLock Метод работает только на событие нажатия клавиши. Используйте событие нажатия клавиши jQuery:

$("#myCustomId").keypress(function(event){
if(isCapsLock(event)){
// Uppercase
}else{
// Lowercase
}
});

Повеселись

Ссылка на основную публикацию
Adblock
detector