现在的位置: 首页 > 综合 > 正文

获取鼠标位置

2013年08月09日 ⁄ 综合 ⁄ 共 3113字 ⁄ 字号 评论关闭

 获取页面上鼠标位置

以下放在head部份

<script language="javascript" type="text/javascript">
<!--
var domType = '';
if (document.all) {
 domType = "ie4";
} else if (document.getElementById) {
 domType = "std";
} else if (document.layers) {
 domType = "ns4";
}
function initMouseMove(){
 if(!document.all){
  document.captureEvents(Event.MOUSEMOVE);
 }
 document.onmousemove = mouseMove;
}
function mouseMove(e){
 var x,y;
 if(!document.all){
  fetch_object("txt").value="move";
  x=e.pageX; 
  y=e.pageY;
 }else{
  x=document.body.scrollLeft+event.clientX;
  y=document.body.scrollTop+event.clientY; 
 }
 fetch_object("txt").value=x+":"+y;
}
var objects=new Array();
function fetch_object(idname, forcefetch) {
 if (forcefetch || typeof(objects[idname]) == "undefined") {
  switch (domType) {
   case "std": {
    objects[idname] = document.getElementById(idname);
   }
   break;
   case "ie4": {
    objects[idname] = document.all[idname];
   }
   break;
   case "ns4": {
    objects[idname] = document.layers[idname];
   }
   break;
  }
 }
 return objects[idname];
}
-->
</script>

 

body部份

 <body onload="initMouseMove()">
页面上鼠标(光标)位置<input id="txt"/>
</body>

 

_________________________________________________________________________________________________________________________

 

另一个实现同样功能的程序

<body onmouseMove="getXY(event)"> 

 

<script language="JavaScript"> 
<!-- 
function mouseX(evt) { 
if (evt.pageX) return evt.pageX; 
else if (evt.clientX) 
return evt.clientX + (document.documentElement.scrollLeft ? 
document.documentElement.scrollLeft : 
document.body.scrollLeft); 
else return null; 
} 
function mouseY(evt) { 
if (evt.pageY) return evt.pageY; 
else if (evt.clientY) 
return evt.clientY + (document.documentElement.scrollTop ? 
document.documentElement.scrollTop : 
document.body.scrollTop); 
else return null; 
} 
function getXY(event) 
{ 
var e = event || window.event; 
var x = mouseX(e); 
var y = mouseY(e); 
document.getElementById("XY").innerHTML = "X:" + x + "<br>Y:" + y; 
} 
function getX(elementID) 
{ 
var el = elementID 
return el.offsetLeft 
} 
function getY(elementID) 
{ 
var el = elementID 
return el.offsetTop 
} 
function getElementPositionX(elemID) 
{ 
var offsetTrail = document.getElementById(elemID); 
var offsetLeft = 0; 
while(offsetTrail) 
{ 
offsetLeft += offsetTrail.offsetLeft; 
offsetTrail = offsetTrail.offsetParent; 
} 
if (navigator.userAgent.indexOf("Mac") != -1 && 
typeof(document.body.leftMargin) != "undefined") { 
offsetLeft += document.body.leftMargin; 
} 
return offsetLeft; 
} 
function getElementPositionY(elemID) 
{ 
var offsetTrail = document.getElementById(elemID); 
var offsetTop = 0; 
while(offsetTrail) 
{ 
offsetTop += offsetTrail.offsetTop; 
offsetTrail = offsetTrail.offsetParent; 
} 
if (navigator.userAgent.indexOf("Mac") != -1 && 
typeof(document.body.leftMargin) != "undefined") { 
offsetTop += document.body.topMargin; 
} 
return offsetTop; 
} 
function getElementPositionXY(elemID) 
{ 
var offsetTrail = elemID; 
var offsetLeft = 24; 
var offsetTop =0; 
while(offsetTrail) 
{ 
offsetLeft += offsetTrail.offsetLeft; 
offsetTop += offsetTrail.offsetTop; 
offsetTrail = offsetTrail.offsetParent; 
} 
if (navigator.userAgent.indexOf("Mac") != -1 && 
typeof(document.body.leftMargin) != "undefined") { 
offsetLeft += document.body.leftMargin; 
offsetLeft += document.body.leftMargin; 
} 
document.getElementById("txt_left").innerText = offsetLeft; 
document.getElementById("txt_top").innerText = offsetTop; 
document.getElementById("divMsg").style.top = offsetTop + "px"; 
} 
//--> 
</script> 
鼠标的位置:<br> 
<span id="XY" style="color:red;"></span><br><br> 
</body>

 

抱歉!评论已关闭.