Принцип роботи та можливості інструменту
Онлайн-інструмент «Тест клавіатури» призначений для перевірки фізичної працездатності клавіш та аналізу технічних кодів подій, які генеруються під час кожного натискання. Користувачеві достатньо натискати клавіші в будь-якому місці вебсторінки, щоб миттєво побачити, чи реєструються вони системою. Інструмент відображає візуальну карту протестованих клавіш, відстежує затиснуті клавіші та веде детальний журнал подій, який можна очистити вручну.
Завдяки детальному аналізу поведінки введення користувач може чітко розрізнити стандартні апаратні процеси (наприклад, системне автоповторення клавіші при утриманні) та фактичні несправності обладнання, як-от неробочі контакти або подвійне спрацьовування перемикачів (дабл-клік).
Способи введення даних
Інструмент підтримує кілька режимів взаємодії для фіксації сигналів клавіатури:
- Фізичні натискання клавіш: автоматично перехоплюються з будь-якої підключеної клавіатури, коли користувач натискає клавіші в будь-якій області сторінки.
- Фокусоване перехоплення клавіатури: активується кліком безпосередньо на екранну карту клавіатури. Цей режим дозволяє фіксувати системні клавіші, такі як Space, Tab та функціональні клавіші, не викликаючи їхніх стандартних дій у браузері. Для виходу з цього режиму використовується клавіша Esc.
- Введення через екранну клавіатуру: спеціальне поле введення для мобільних пристроїв, яке дозволяє тестувати віртуальні та екранні клавіатури.
- Команда очищення журналу: ручне натискання кнопки «Очистити журнал» для повного видалення записаної історії подій.
Результати тестування та інтерфейс
Інструмент виводить інформацію у кількох функціональних блоках:
Остання подія клавіші
У цьому розділі відображаються технічні властивості останнього зафіксованого натискання:
- Клавіша (динамічне значення символу).
- Код (статичний код фізичного положення).
- Застарілий keyCode (числовий ідентифікатор).
- Розташування (набуває значень «Стандартна», «Ліворуч», «Праворуч» або «Цифрова»).
- Модифікатори (показує «Немає» або перелічує активні модифікатори: «Shift», «Ctrl», «Alt», «Meta», «Caps Lock»).
- Індикатори стану натискання («Натискання» / «Відпускання») та лічильник автоповторення «Повторення ×
{count}», який фіксує кількість подій генерації символу при утриманні клавіші.
Карта клавіатури
Візуальна карта у розкладці ANSI підсвічує клавіші відповідно до їхнього поточного стану:
- «Затиснуто» (клавіша утримується в цей момент).
- «Перевірено» (клавіша була натиснута хоча б один раз за сесію).
Статистика
- Перевірено клавіш (загальна кількість унікальних протестованих клавіш).
- Всього натискань (загальна кількість зафіксованих подій натискання).
- Зараз затиснуто (кількість клавіш, що утримуються одночасно).
Журнал подій
Таблиця з історією подій під назвою «Журнал подій» (якщо подій немає, відображається текст «Подій клавіатури ще немає — натисніть будь-яку клавішу.»). Таблиця містить такі стовпці:
- Час
- Подія (набуває значень «Натискання» або «Відпускання»)
- Клавіша
- Код
- Модифікатори
Події автоповторення від утримуваної клавіші збільшують лічильник на панелі останньої події, але не додаються окремими рядками до журналу подій.
Індикатор статусу фіксації
Показує поточний стан захоплення введення:
- «Натисніть будь-яку клавішу для початку»
- «Фіксація введення з клавіатури»
- «Повне перехоплення — Esc звільняє клавіатуру»
Перевірка екранної клавіатури
Спеціальна зона для мобільних пристроїв містить поле введення з підказкою «Торкніться і пишіть…» та інструкцію: «Торкніться поля та почніть писати — усе, що повідомляє браузер, з’явиться вище.».
Правила обробки подій та обмеження
При тестуванні клавіатури слід враховувати технічні особливості взаємодії браузера з операційною системою:
- Системні гарячі клавіші: комбінації клавіш, зарезервовані операційною системою або браузером (наприклад, перемикання між вкладками, закриття вікон, перехід у повноекранний режим або системний пошук), перехоплюються на рівні ОС або браузера до того, як подія досягне вебсторінки. Такі комбінації не реєструються інструментом. Для перевірки працездатності цих клавіш їх необхідно натискати окремо, а не в комбінаціях.
- Різниця між Key та Code: значення «Клавіша» (Key) є динамічним і залежить від активної мовної розкладки та затиснутих модифікаторів (наприклад, одна й та сама фізична клавіша може повернути значення «a» або «A»). Значення «Код» (Code) є статичним і відображає фізичне розташування клавіші на платі (наприклад, «KeyA», «ShiftLeft», «Space»), залишаючись незмінним незалежно від налаштувань мови в системі.
- Автоповторення: тривале утримання клавіші активує системну функцію автоповтору, що генерує безперервну серію подій натискання, які інструмент групує за допомогою лічильника «Повторення ×
{count}». - Особливості мобільних ОС: віртуальні клавіатури на мобільних пристроях (особливо на базі Android) часто не передають стандартні коди клавіш, через що інструмент може виводити значення «Unidentified». Для точного аналізу поведінки мобільного введення слід використовувати спеціальне поле «Перевірка екранної клавіатури».
- Обмеження карти макета: інтерактивна карта виконана у стандартному повнорозмірному форматі ANSI. Клавіші, які відсутні на цьому макеті (наприклад, специфічні клавіші ISO-розкладок, функціональні шари Fn на ноутбуках або додаткові медіаклавіші), не підсвічуватимуться на карті, проте вони успішно реєструються системою та відображаються в журналі подій і блоці останньої події.
- Збереження даних: усі зафіксовані дані існують лише в межах поточної сесії. Натискання кнопки «Очистити журнал», оновлення сторінки або закриття вкладки призводить до безповоротного видалення всієї зібраної інформації.
Конфіденційність та обробка даних
Усі натискання клавіш обробляються локально у вашому веббраузері та зчитуються виключно активною сторінкою для миттєвого відображення результатів на екрані. Жодні дані про введені символи чи коди не зберігаються на сервері та не завантажуються на зовнішні ресурси. Закриття сторінки або очищення журналу повністю видаляє всі сліди активності.
Сфери застосування інструменту
- Діагностика апаратних несправностей: швидке виявлення непрацюючих клавіш, зношених перемикачів або проблем із подвійним кліком (дребезг контактів).
- Розробка програмного забезпечення: перевірка розробниками ігор та вебдодатків того, як різні фізичні клавіші та модифікатори транслюються у властивості JavaScript-подій
key,codeта застарілийkeyCode. - Тестування мобільних пристроїв: аналіз поведінки екранних клавіатур та зовнішніх Bluetooth-аксесуарів при підключенні до смартфонів чи планшетів.
- Кастомізація клавіатур: перевірка працездатності нових перемикачів після паяння, збирання кастомних плат або перепризначення клавіш через спеціалізоване програмне забезпечення.
Часті запитання
Яка різниця між значеннями key та code?
Значення key — це символ або дія, яку створює натискання прямо зараз. Воно змінюється залежно від розкладки та модифікаторів, тому одна й та сама фізична клавіша повертає «a» чи «A», або зовсім іншу літеру в іншій мовній розкладці. Значення code визначає фізичне положення клавіші (KeyA, ShiftLeft, Space) і ніколи не змінюється, саме тому ігри та програми прив’язують свої гарячі клавіші до значення code.
Чому клавіатура мого телефона показує «Unidentified»?
Екранні клавіатури — особливо на Android — часто надсилають загальні події без реальних значень клавіш, і сторінка може відображати лише те, що повідомляє браузер. Відкрийте перевірку екранної клавіатури під розкладкою, щоб побачити, що саме надсилає ваша клавіатура; зовнішня клавіатура або клавіатура ноутбука передає повні дані.
Клавіша спрацьовує знову і знову, поки я її тримаю — вона несправна?
Ні. Утримання клавіші змушує систему надсилати повторювані події натискання, які показуються тут із позначкою Repeat та лічильником — це звичайне автоповторення. Справжніми ознаками несправності є протилежне: кілька подій від одного швидкого дотику або дотик, який взагалі не реєструється, що вказує на зношений або залиплий перемикач.
Чому деякі комбінації клавіш не відображаються?
Комбінації клавіш, зарезервовані браузером або операційною системою — закриття чи перемикання вкладок і застосунків, повноекранний режим, системний пошук — перехоплюються до того, як сторінка зможе їх розпізнати, тому вони ніколи не з’являться тут. Така відсутність реакції є нормальною, це не зламана клавіша: протестуйте ці клавіші окремо, і кожна з них зареєструється сама по собі.