In this tutorial we will see how to Move Background Image with Mouse Using JavaScript. The onmousemove Event and MouseEvent offset Property is used for this.
Table of Contents
HTML Code
HTML Code is given below, This code contains the body element and background image is applied to it using CSS.
<!DOCTYPE html>
<html>
<head>
<title>Move Background Image with Mouse Using JavaScript</title>
</head>
<style>
body {
margin: 0;
padding: 0;
background-image: url(bg.jpg);
}
</style>
<body>
</body>
</html>
onmousemove Event
The onmousemove Event is used to execute a JavaScript function whenever mouse pointer is moved over HTML element.
The onmousemove event is supported by all major browsers.
MouseEvent offsetX Property
The MouseEvent offsetX Property is used to get the x-coordinate of the mouse pointer, relative to the selected or target HTML element.
The MouseEvent offsetX Property is supported by all major browsers.
MouseEvent offsetY Property
The MouseEvent offsetY Property is used to get the y-coordinate of the mouse pointer, relative to the selected or target HTML element.
The MouseEvent offsetY Property is supported by all major browsers.
JavaScript Code
In this example, a function is triggered when a mouse is moved anywhere over the html document. The function then gets the x-coordinates and y-coordinates of the mouse cursor with respect to the document element. These coordinates are then used to change the position of the background image.
Take a look at the code given below.
<script>
document.onmousemove = function(){
var x = event.offsetX;
var y = event.offsetY;
document.body.style.backgroundPositionX = -x + "px";
document.body.style.backgroundPositionY = -y + "px";
}
</script>
Demo
Video Tutorial
Watch video tutorial on how to Move Background Image with Mouse Using JavaScript.