<header>
  <h2 class="title">KeyboardEvent -> location</h2>
  <p class="description">Визначає фізичне розташування натиснутої клавіші.</p>
</header>
<main>
  <div class="result">
    <p>Натисніть клавішу <strong>Shift</strong>, <strong>Alt</strong> або <strong>Control</strong> для перевірки.</p>
    <p id="output">Результат з’явиться тут</p>
  </div>
</main>
body {
  font-size: 16px;
  line-height: 1.5;
  font-family: monospace;
}

header {
  background-color: #f1f1f1;
  margin-bottom: 25px;
  padding: 15px;
  box-shadow: 0px 0px 3px 0px rgba(118, 118, 118, 1);
}

header h2.title {
  padding-bottom: 15px;
  border-bottom: 1px solid #999;
}

header p.description {
  font-style: italic;
  color: #222;
}

.result {
  background-color: #f8f8f8;
  padding: 15px;
  box-shadow: 0px 0px 3px 0px rgba(118, 118, 118, 1);
}

#output {
  font-weight: bold;
  color: #333;
  margin-top: 10px;
}
const output = document.getElementById('output');

document.addEventListener('keydown', (event) => {
  if (['Shift', 'Control', 'Alt'].includes(event.key)) {
    let side;
    switch (event.location) {
      case 1:
        side = 'ліва';
        break;
      case 2:
        side = 'права';
        break;
      default:
        side = 'центральна';
    }
    output.textContent = `Натиснуто ${side} клавішу ${event.key}.`;
  }
});

External CSS

This Pen doesn't use any external CSS resources.

External JavaScript

This Pen doesn't use any external JavaScript resources.