JS制作跟随鼠标移动的图片
有趣的小案例池子:
JS实现定时器
JS实现关闭图片窗口
JS实现输入检验
获取焦点后隐藏提示内容的输入框
JS实现获取鼠标在画布中的位置
聊天信息框显示消息
JS点击切换背景图
自动切换背景的登录页面
JS制作跟随鼠标移动的图片
JS实现记住用户密码
效果展示
案例简介
本文讲解如何使用JS制作可以跟随鼠标移动的图片,我这里是用一直天使的gif图片演示的。
构建HTML框架
<body>
<!-- 这里填写需要跟随鼠标的图片 -->
<img src="images/angel.gif" alt="">
</body>
CSS渲染
<style>
img {
/* 把图片设置为绝对定位 */
position: absolute;
}
</style>
JS逻辑
<script>
// 获取图片元素
var pic = document.querySelector('img');
// 添加鼠标移动事件
document.addEventListener('mousemove', function(e) {
// 1. mousemove只要我们鼠标移动1px 就会触发这个事件
// console.log(1);
// 2.核心原理: 每次鼠标移动,我们都会获得最新的鼠标坐标, 把这个x和y坐标做为图片的top和left 值就可以移动图片
var x = e.pageX;
var y = e.pageY;
console.log('x坐标是' + x, 'y坐标是' + y);
//3 . 千万不要忘记给left 和top 添加px 单位
pic.style.left = x - 50 + 'px';
pic.style.top = y - 42 + 'px';
});
</script>
完整代码
<!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>
<style>
img {
/* 把图片设置为绝对定位 */
position: absolute;
}
</style>
</head>
<body>
<!-- 这里填写需要跟随鼠标的图片 -->
<img src="images/angel.gif" alt="">
<script>
// 获取图片元素
var pic = document.querySelector('img');
// 添加鼠标移动事件
document.addEventListener('mousemove', function(e) {
// 1. mousemove只要我们鼠标移动1px 就会触发这个事件
// console.log(1);
// 2.核心原理: 每次鼠标移动,我们都会获得最新的鼠标坐标, 把这个x和y坐标做为图片的top和left 值就可以移动图片
var x = e.pageX;
var y = e.pageY;
console.log('x坐标是' + x, 'y坐标是' + y);
//3 . 千万不要忘记给left 和top 添加px 单位
pic.style.left = x - 50 + 'px';
pic.style.top = y - 42 + 'px';
});
</script>
</body>
</html>