JS властивість Event.shiftKey (Key)


Загальний опис

shiftKey — це властивість об'єкта KeyboardEvent, яка повертає булеве значення (true або false) в залежності від того, чи була натиснута клавіша "Shift" під час події клавіатури (наприклад, keydown, keypress або keyup). Ця властивість дозволяє програмісту реагувати на комбінації клавіш, наприклад, активувати додаткові функції, коли разом із натисканням основної клавіші використовується "Shift".

Використання shiftKey дозволяє визначити, чи натиснув користувач "Shift", і на основі цього змінити поведінку програми. Це може бути корисно, наприклад, для зміни регістру введених символів, активації альтернативних функцій або створення скорочень клавіш для швидкого виконання операцій. Значення shiftKey доступне в будь-якому з обробників подій клавіатури і дозволяє програмі відстежувати, чи була клавіша натиснута під час певної події.

Ось базовий приклад використання:

document.addEventListener('keydown', function(event) {
    if (event.shiftKey) {
        console.log('Клавіша Shift натиснута!');
    }
});

У цьому прикладі кожного разу, коли користувач натискає будь-яку клавішу разом із "Shift", в консоль виводиться повідомлення про те, що "Shift" натиснуто. Це простий спосіб визначити, чи використовує користувач комбінацію клавіш із "Shift".

Крім цього, shiftKey може бути корисним для створення складних гарячих клавіш (шорткатів), які активуються лише за певних умов, таких як натиснення одночасно декількох клавіш, наприклад, "Shift" + "Enter" для виконання певної дії або надсилання форми.

автор: Bond

Порада

Перевіряйте не тільки shiftKey, але й інші властивості клавіш, такі як ctrlKey або altKey, щоб створювати багаті комбінації клавіш для більш просунутих функцій, як це реалізовано в багатьох професійних додатках.

автор: Bond
Порада

Пам'ятайте, що деякі системи або браузери можуть мати специфічну поведінку для клавіші "Shift", тому завжди тестуйте свої рішення на різних платформах і браузерах.

автор: Bond
Порада

Якщо використовуєте shiftKey для введення символів, наприклад, зміни регістру, врахуйте, що результат може залежати від мовної розкладки клавіатури. Завжди тестуйте локалізовані версії вашого додатка.

автор: Bond

Синтаксис

event.shiftKey

Переглядачі

Підтримка: стаціонарні переглядачі
Переглядач Google Chrome Mozilla Firefox Apple Safari Opera Microsoft EDGE
1 1.5 1.2 12.1 12
Підтримка: мобільні переглядачі
Переглядач Mobile Google Android Mobile Google Chrome Mobile Mozilla Firefox Mobile Apple Safari
37 18 4 1
Підтримка: серверні переглядачі
Переглядач Node.js Deno
- -

Приклади

+ запропонувати свій приклад у пісочниці

У цьому прикладі користувач може надіслати форму за допомогою комбінації "Shift + Enter", що активує альтернативний процес, відмінний від звичайного натискання "Enter". Це корисно для додавання кастомної логіки до дій, які залежать від поєднання клавіш.

document.addEventListener('keydown', function(event) {
    if (event.shiftKey && event.key === 'Enter') {
        console.log('Надсилання форми з використанням Shift + Enter');
    } else if (event.key === 'Enter') {
        console.log('Звичайне надсилання форми');
    }
});
автор: Bond

Користувач може натискати кнопки "Збільшити текст" або "Зменшити текст", щоб змінювати розмір тексту в абзаці. Якщо при цьому утримувати клавішу "Shift", швидкість зміни розміру збільшується в 4 рази. Це корисний приклад, що демонструє, як можна використовувати shiftKey для надання додаткової функціональності або прискорення дій в інтерфейсі.

автор: Bond

У цьому прикладі при натисканні "Shift" разом зі стрілкою вгору об’єкт переміщується на більшу відстань. Це можна використовувати для створення більш точних або швидких переміщень у графічних редакторах або ігрових додатках.

document.addEventListener('keydown', function(event) {
    if (event.shiftKey && event.key === 'ArrowUp') {
        console.log('Переміщення об’єкта на більшу відстань вгору');
    } else if (event.key === 'ArrowUp') {
        console.log('Переміщення об’єкта на меншу відстань вгору');
    }
});
автор: Bond

Коментарі

Коментарів ще немає — будьте першим!

Відповідь для

Увійдіть — коментар з'явиться одразу, без капчі й очікування перевірки.

Пропозиція правки

Ваша версія — : після перевірки замінить чинну. Нова порада чи нотатка — з'явиться на сторінці після перевірки.

Ви гість — діють добові ліміти. Увійдіть, щоб пропонувати без капчі.

Ваша версія секції «»: після перевірки замінить чинну.

Ви гість — діють добові ліміти. Увійдіть, щоб пропонувати без капчі.

Ваша версія опису «»: після перевірки замінить чинну.

Ви гість — діють добові ліміти. Увійдіть, щоб пропонувати без капчі.

Зворотний зв'язок
Вхід