How to Detect Ctrl Key in Javascript

In this tutorial, you will learn how to detect Ctrl key in javascript. In a standard keyboard layout, the Ctrl key is located in the last row on the left and right, just below the shift key. It is generally used in combination with other keys such as Alt, Shift, Delete, etc to perform certain operations.

Whenever we press the Ctrl key or any other key on the keyboard, certain keyboard events are triggered. In the event handler function, the event object contains details about the keyboard event. The event object has a key property that can reveal which key has been pressed by the user.

To keep things simple, we are going to monitor keydown event and in the event handler function, we will verify whether the Ctrl key is pressed or not.

In the following example, we have an input element.  As soon as the user presses the Ctrl key while typing in the input field, we will display a message on the screen. Please have a look over the code example and the steps given below.

HTML & CSS

  • We have 3 elements in the HTML file (div, h1, and input).
  • The div element is just a wrapper for the rest of the elements. We are using style attribute with div element to center align the child elements.
  • The innerText for the h1 element is “Result”.
  • We have also included our javascript file script.js with a script tag at the bottom.
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
</head>
<body>
      
    <div style="text-align: center">
        <input type="text" placeholder="Enter Text">
        <h1>Result</h1>
    </div>
    <script src="script.js"></script>
</body>
</html>

Javascript

  • We have selected the input element and h1 element using document.querySelector() method and stored them in the input and result variables respectively.
  • We have attached keydown event listener to the input element.
  • In the event handler function, we are using if statement and key property of the event object to verify whether the Ctrl key is pressed or not.
  • Depending upon the result of verification, we are updating innerText of the h1 element.
let input = document.querySelector("input");
let result = document.querySelector("h1");

input.addEventListener("keydown", (e) => {     
  if (e.key === "Control") {
    result.innerText = "Ctrl Key Pressed";
  } else {
    result.innerText = "Ctrl Key Not Pressed";
  }
});