js如何实现让某个元素跟随鼠标移动
可以使用鼠标移动事件(mousemove)和CSS的transform属性来实现让某个元素跟随鼠标移动。具体实现步骤如下:
- 获取要跟随鼠标移动的元素和页面的宽度和高度。
var element = document.getElementById('element-id');
var pageWidth = window.innerWidth;
var pageHeight = window.innerHeight;
- 监听鼠标移动事件,获取鼠标的坐标。
document.addEventListener('mousemove', function(event) {
var mouseX = event.clientX;
var mouseY = event.clientY;
});
- 计算元素应该移动的位置,通过CSS的transform属性设置元素的位置。
var moveX = (mouseX / pageWidth) * 100;
var moveY = (mouseY / pageHeight) * 100;
element.style.transform = 'translate(' + moveX + '%, ' + moveY + '%)';
完整代码如下:
var element = document.getElementById('element-id');
var pageWidth = window.innerWidth;
var pageHeight = window.innerHeight;
document.addEventListener('mousemove', function(event) {
var mouseX = event.clientX;
var mouseY = event.clientY;
var moveX = (mouseX / pageWidth) * 100;
var moveY = (mouseY / pageHeight) * 100;
element.style.transform = 'translate(' + moveX + '%, ' + moveY + '%)';
});
注意:需要在CSS中设置元素的定位方式为绝对定位(position: absolute),否则元素无法跟随鼠标移动。
原文地址: https://www.cveoy.top/t/topic/0pi 著作权归作者所有。请勿转载和采集!