JSFiddle - React, Tailwind, and code Playground

HTML

<!DOCTYPE html>
<html lang="en" dir="ltr">
  <head>
    <meta charset="utf-8">
    <link rel="stylesheet" href="style.css">
    <title>Five elements</title>
  </head>
  <body>
    <div class="container">
      <div class="block"></div>
      <div class="block"></div>
      <div class="block"></div>
      <div class="block"></div>
      <div class="block"></div>
    </div>
  </body>
  <script type="text/javascript" src="script.js"></script>
</html>

CSS

.block{
  width: 100px;
  height: 100px;
  background: blue;
  margin: 20px;
}
.active{
  background: red;
}

JavaScript

(() => {
  let selectedBlockOld;
  document.addEventListener("click", (() => {
    return (e) => {
      if (e.target.classList.contains("block")){
        if (selectedBlockOld) {
          selectedBlockOld.classList.remove("active");
        }
        let selectedBlock = e.target;
        selectedBlock.classList.add("active");
        selectedBlockOld = selectedBlock;
      }
    };
  })());
})();