1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > html js 鼠标移动图片跟着移动

html js 鼠标移动图片跟着移动

时间:2021-12-18 15:30:22

相关推荐

html js 鼠标移动图片跟着移动

<html><head><meta charset="utf-8" /><title>实现在指定区域内图片随着鼠标的移动移动</title><link rel="stylesheet" href="indexCss.css"></head><body><div class="shubiao"><div class="div_img"><img src="图片的地址" alt="图片" /></div></div><div class="XS"><p class="WinX">鼠标的X值:<p id="winXZ">0</p></p><br /><p class="WinY">鼠标的Y值:<p id="winYZ">0</p></p></div></body><script src="indexJS.js"></script></html>

css只是布局随便搞搞就好了ustify-content: center; align-items: center;这俩个是居中,min-height: 100vh;最小高度是100vh

*{margin: 0;padding: 0;box-sizing: border-box;}.shubiao{display: flex;justify-content: center;align-items: center;min-height: 100vh;}.shubiao .div_img img{position: relative;display: flex;width: 500px;height: 350px;background-size: cover;}.XS{position: relative;left: 0;top: -80px;display: flex;}.XS .WinX,.XS .WinY{display: inline;/*取消换行*/}

首先若是要实现鼠标移动图片跟着移动第一步是要捕获到鼠标的位置:

function WinDiv(){winXZ.innerHTML = window.event.clientX;//鼠标X轴方向winYZ.innerHTML = window.event.clientY;//鼠标Y轴方向}document.onmousemove = WinDiv;//实现效果

我的图片设定是居中的,先把鼠标放到中心位置查看坐标(对之后计算有用)

我们让图片在中间为界的位置上只是移动一次:

(1)首先我们获取到图片id值才可以方便进行更改所以我们在img标签上多增加一个id="":

<img src="图片的地址" alt="图片" id="img1"/>

(2)为了添加有移动的效果我们在css里定义一个新的元素:

#img1{transition: 0.5s;}

(3)然后我们根据中间的位置写一个简单的js(javascript)判断:

function WinDiv(){winXZ.innerHTML = window.event.clientX;winYZ.innerHTML = window.event.clientY;let img1 = document.getElementById('img1');if(window.event.clientX > 767){img1.style.left = 5 + "px";}if(window.event.clientX < 767){img1.style.left = -5 + "px";}if(window.event.clientY > 393){img1.style.top = 5 + "px";}if(window.event.clientY < 393){img1.style.top = -5 + "px";}}document.onmousemove = WinDiv;//中心X:767,Y:393

就完成了简单的图片跟着键盘动了,逻辑思维算法都在里面随意更改

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。