onmousemove 监听鼠标移动事件。 注意,ie8及ie8以下监听不到event, 所以要用event=window.event;做一下兼容处理。 clientX/clientY获取当前鼠标在指定标签内的可见横纵坐标位置。
标签.οnmοusemοve=function(event){
//兼容处理
if(!event){
event=window.event;
}
// 或者
// event=event||window.event;
console.log("X = “+event.clientX+” Y = "+event.clientY);
}
鼠标跟随例子:
定义一个100*100 红色背景的div #test, clientX/clientY是浏览器可见的坐标, pageX/pageY是整个页面文档, 但是不兼容ie8及其以下。 所以,要兼容的话我们只能使用clientX、clientY, 如果body高于整个浏览器可见高度, 跟随的div定位, 就要减去距离顶部或者距离左侧的距离。 如下:
<div id="test" class="test">
</div>
document.onmousemove=function(event){
//解决兼容
event=event||window.event;
//获取到鼠标的坐标 clientX/clientY 是相对于浏览器窗口 pageX/pageY 是整个页面文档,不兼容ie8
// var left=event.pageX;
// var top=event.pageY;
var st=document.body.scrollTop||document.documentElement.scrollTop;
var sl=document.body.scrollLeft||document.documentElement.scrollLeft;
var left=event.clientX;
var top=event.clientY;
test.style.left=left+sl+"px";
test.style.top=top+st+"px";
}