Редактор Downcodes знакомит вас с недавно выпущенным настольным приложением чат-бота Claude AI от Anthropic! Это приложение теперь официально доступно в сети и поддерживает системы Mac и Windows. Пользователи могут бесплатно загрузить его через официальный сайт Anthropic. По сравнению с веб-версией настольное приложение обеспечивает более удобный и быстрый интерактивный опыт, позволяя пользователям общаться с Клодом в любое время и в любом месте, повышая эффективность работы и обучения. В этой статье будут подробно представлены функциональные особенности, преимущества и сравнение с другими чат-ботами ИИ настольного приложения Claude, а также даны ответы на некоторые распространенные вопросы, которые помогут вам получить полное представление об этом мощном инструменте ИИ.
В JavaScript обычным требованием является получение соответствующего кода клавиши клавиатуры через имя клавиши (то есть имя клавиши, нажатой пользователем), которая в основном используется для обработки событий клавиатуры. Методы получения keyCode включают в себя прослушивание событий клавиатуры, использование атрибута event.key и поиск соответствующей таблицы сопоставления keyCode. Среди них прослушивание событий клавиатуры является наиболее прямым методом. Когда пользователь нажимает клавишу, браузер запускает событие клавиатуры (например, нажатие клавиши, нажатие клавиши). Этот объект события содержит соответствующую информацию о работе клавиатуры, среди которой event.keyCode (теперь устарело, рекомендуется использовать event.code или event). Атрибут .key) — это ключевой код, который мы хотим получить.
Чтобы получить keyCode клавиатуры по имени клавиши, сначала необходимо прослушать события клавиатуры. В Javascript этого можно добиться, добавив прослушиватели событий. Здесь в качестве примера мы возьмем событие нажатия клавиши. Это событие будет вызвано, когда пользователь нажимает любую клавишу.
document.addEventListener('keydown', function(event) {
console.log(имя нажатой клавиши: + event.key);
console.log(KeyCode нажатой клавиши: + event.keyCode // Не рекомендуется);
console.log(рекомендуется использовать event.code: + event.code);
});
Этот код будет прослушивать событие нажатия клавиши всего документа. При каждом нажатии клавиши будут печататься имя текущей клавиши (event.key), устаревший keyCode (event.keyCode) и рекомендуемый event.code. event.key предоставляет удобочитаемое имя для ключа, а event.code обеспечивает более стабильную и стандартизированную кодировку ключа, которая больше подходит для идентификации конкретных физических ключей.
Свойство event.key возвращает имя ключа. В большинстве ситуаций, когда keyCode необходимо получить через имя ключа, для удовлетворения потребностей достаточно прямого использования event.key. По сравнению с keyCode или charCode преимущество event.key заключается в том, что он может напрямую возвращать простое для понимания имя клавиши, например Enter, ArrowLeft и т. д., поэтому нет необходимости проверять соответствующее значение keyCode.
Однако если вам действительно нужен keyCode в вашем сценарии, вам может потребоваться самостоятельно создать таблицу сопоставления event.key с keyCode или использовать библиотечные функции, чтобы завершить это сопоставление.
const keyMap = {
Введите: 13,
Стрелка влево: 37,
СтрелкаВправо: 39,
// Заполняем дополнительные сопоставления клавиш
};
document.addEventListener('keydown', function(event) {
если (keyMap[event.key]) {
console.log(Код сопоставленного ключа: + keyMap[event.key]);
}
});
В Интернете существует множество заранее запрограммированных таблиц сопоставления кодов клавиш и имен клавиш. В некоторых конкретных случаях, когда вы знаете конкретное имя клавиши, нажатой пользователем, и хотите получить соответствующий код клавиши, вы можете напрямую запросить эти таблицы сопоставления. Однако важно отметить, что, поскольку использование keyCode прекращено и больше не рекомендуется, рекомендуемым подходом является использование event.key или event.code, когда это возможно. Этот подход, хотя и имеет место в некоторых устаревших проектах, не следует рассматривать как долгосрочное решение.
Хотя event.key и event.code предоставляют более современный и стандартизированный способ обработки событий клавиатуры, все же есть некоторые детали, на которые следует обратить внимание, когда дело доходит до кроссбраузерной совместимости. Некоторые старые версии браузеров могут не поддерживать эти свойства, поэтому при разработке обязательно выполните обнаружение соответствующих функций или используйте Polyfill для обеспечения резервной поддержки.
document.addEventListener('keydown', function(event) {
пусть ключ = event.key || event.keyCode;
console.log(нажатая клавиша: + клавиша);
});
В этом коде оператор || используется для первой попытки получить значение event.key; если оно не существует (что может произойти в старых браузерах), он возвращается к использованию event.keyCode.
Хотя технически возможно получить keyCode из имени ключа различными способами, с развитием веб-технологий необходимость непосредственного использования keyCode постепенно уменьшается. Новые API, такие как event.key и event.code, обеспечивают более интуитивно понятный и стандартизированный способ обработки событий клавиатуры. Поэтому, когда вы сталкиваетесь с такими требованиями, предпочтительной практикой должно быть использование этих современных API, сохраняя при этом соображения совместимости со старыми браузерами.
1. Как получить код клавиши клавиатуры из имени клавиши с помощью JavaScript?
Когда пользователь запускает событие клавиатуры, мы можем получить keyCode клавиатуры из имени клавиши с помощью JavaScript. Это можно сделать, выполнив следующие действия:
Сначала прослушайте события клавиатуры, такие как нажатие клавиши на клавиатуре, событие подъема клавиатуры или нажатие клавиши на событие ввода символов. В функции обработки событий получается событие объекта события, которое можно передать через параметры или получить через window.event. Используйте event.keyCode, чтобы получить код клавиши клавиатуры.Вот пример кода:
document.addEventListener('keydown', function(event) { var keyCode = event.keyCode; console.log('Keycode:', keyCode);}); Как получить соответствующее имя ключа на основе keyCode?JavaScript предоставляет интерфейс KeyboardEvent, который можно использовать для получения имени клавиши, соответствующего коду клавиши. Его можно получить с помощью свойств KeyboardEvent.key или KeyboardEvent.code, в зависимости от того, хотите ли вы получить фактическое имя клавиши или жестко закодированный примитив клавиши, сгенерированный браузером.
Вот пример кода:
document.addEventListener('keydown', function(event) { var keyName = event.key; console.log('Keyname:', keyName);}); Как получить код клавиши клавиатуры, совместимой с разными браузерами?В разных браузерах названия свойств объекта события могут немного отличаться, поэтому при получении кода ключа клавиатуры он должен быть совместим с разными браузерами.
Вы можете использовать следующий код для совместимости с различными браузерами:
document.addEventListener('keydown', function(event) { var keyCode = event.keyCode || event.that || event.charCode; console.log('Keycode: ', keyCode);});В этом примере мы используем логический оператор ИЛИ ||, чтобы получить наиболее распространенные атрибуты событий клавиатуры и гарантировать правильное получение кода клавиши клавиатуры в нескольких браузерах.
Надеюсь, эта статья поможет вам лучше понять, как обрабатывать события клавиатуры и получать код клавиши в JavaScript. Редактор Downcodes продолжит давать вам больше практических советов!