Mouse Following Eyes using CSS and JavaScript

In this tutorial we have made Mouse Following Eyes using CSS and JavaScript. The JavaScript and CSS code is given below.

HTML Code

HTML Code is given below.

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<link rel="stylesheet" href="style.css">
<title>Mouse Following Eyes using CSS and JavaScript</title>
</head>
<body>
<div>
<div class="eye-white">
<div class="eye-ball"></div>
</div>
<div class="eye-white">
<div class="eye-ball"></div>
</div>
</div>
</body>
</html>

CSS Code

CSS Code is given below.

body{
  margin: 0;
  padding: 0;
  display: flex;
  height: 100vh;
  align-items: center;
  justify-content: center;
  background: #22438c; 
}
.eye-white{
  width: 200px;
  height: 200px;
  margin: 30px;
  border-radius: 50%;
  position: relative;
  display: inline-block;
  overflow: hidden;
  background: #fff;
}
.eye-ball{
  width: 70px;
  height: 70px;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  background:black;    
}

JavaScript Code

JavaScript Code is given below, In this code we are changing the position of eye balls with respect to the mouse cursor.

<script>
var  eye = document.getElementsByClassName("eye-ball");
document.onmousemove = function(){
var width = window.innerWidth;
var x = event.clientX;
var a = x / width;
a= a *100;
var height = window.innerHeight;
var y = event.clientY;
var b = y / height;
b= b *100;
eye[0].style.cssText = "left: " + a + "%; top: " + b + "%;" + "transform:translate(-"+a+"%,-"+b+"%)";
eye[1].style.cssText = "left: " + a + "%; top: " + b + "%;" + "transform:translate(-"+a+"%,-"+b+"%)"; 
}
</script>

Video Tutorial

Watch video tutorial on how to create Mouse Following Eyes using CSS and JavaScript.