跟随鼠标的天使
核心思路
每次鼠标移动,我们通过鼠标事件对象得到最新鼠标在文档中的坐标,把这个x和y坐标给图片left和top值就可以移动图片(注意:鼠标要移动距离且不占有位置,需要绝对定位)
鼠标事件对象 | 说明 |
---|---|
e.clientX | 返回鼠标相对于浏览器可视区的X坐标 |
e.clientX | 返回鼠标相对于浏览器可视区的Y坐标 |
e.pageX | 返回鼠标相对于文档页面的X坐标 |
e.pageY | 返回鼠标相对于文档页面的Y坐标 |
e.screenX | 返回鼠标相对于电脑屏幕X坐标 |
e.screenY | 返回鼠标相对于电脑屏幕Y坐标 |
/* 图片需要绝对定位 */
img {
position: absolute;
top: 0;
left: 0;
}
//核心思路:每次鼠标移动,通过鼠标移动事件,获取鼠标位置,把鼠标位置作为图片的top和left值
var pic = document.querySelector('img');
document.addEventListener('mousemove', function(e) {
//得到鼠标在文档页面的x坐标和y坐标
var x = e.pageX;
var y = e.pageY;
//得到图片的宽度和高度
var width = pic.offsetWidth;
var height = pic.offsetHeight;
//让鼠标在图片中间,图标跟随鼠标移动
pic.style.left = x - width / 2 + 'px';
pic.style.top = y - height / 2 + 'px';
})
Comments NOTHING