`
xplq
  • 浏览: 90028 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

获取鼠标坐标

阅读更多

需要获取鼠标的坐标.只需要将用户函数绑定到document.onmousemove就可以了,同时要考虑的ie与firefox等浏览器的区别。

首先,绑定

document.onmousemove=mouseMove;

  

其次,制作自定义用户函数mouseMove(ev)

function mouseMove(event){
      ev= event|| window.event;//所有浏览器下获取了event事件
      var mouseXY = mousePos(ev);//获取位置
}

 

在firefox浏览器中event事件会被相应的自定义函数获取,而在ie中,event是全局变量,会被存储在window.event里.

获取到event事件后。获取鼠标的就简单多了。

最后,获取鼠标的文档的位置

在ff中,鼠标的位置是通过event对象的pageX和pageY来获取。而ie中由于event对象的clientX 和clientY并不是鼠标的位置,而是鼠标在ie窗口的位置,所以获取坐标的位置则要考虑滚动条和窗口边框的大小,即获取鼠标在文档中的实际位置。

function mousePos(ev){
if(ev.pageX || ev.pageY){
   return {x:ev.pageX, y:ev.pageY};
}
return {
   x:ev.clientX + document.body.scrollLeft - document.body.clientLeft,
   y:ev.clientY + document.body.scrollTop   - document.body.clientTop
};
}
 

 如此一来,就获取了鼠标的位置。

测试网页:

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style type="text/css">
legend {
	font-weight: bold;
	font-size: 12px;
	color: #666699;
	font-family: verdana, tahoma, arial;
}

fieldset {
	padding: 3px;
}
</style>
<title>层</title>

<script type="text/javascript">
	document.onmousemove = mouseMove;
	function mouseMove(ev)
	{
		ev = ev || window.event;
		var mouseXY = mousePos(ev);
		$('xp').value = mouseXY.x;
		$('yp').value = mouseXY.y;
	}

	function mousePos(ev)
	{
		if (ev.pageX || ev.pageY)
		{
			return {
				x :ev.pageX,
				y :ev.pageY
			};
		}
		return {
			x :ev.clientX + document.body.scrollLeft - document.body.clientLeft,
			y :ev.clientY + document.body.scrollTop - document.body.clientTop
		};
	}
	function $(id)
	{
		return document.getElementById(id);
	}
</script>
</head>
<body>
<fieldset id="Demo2"><legend>示例 - 移动你的鼠标</legend> 鼠标x坐标: <input type="text" id="xp" /> &nbsp; 鼠标y坐标: <input
	id="yp"></fieldset>
</body>
</html>

 

 成功。

 参考:

http://www.webreference.com/programming/javascript/mk/column2/index.html

http://hi.baidu.com/liwanli377/blog/item/d60ef40ac785163db1351d95.html

 

分享到:
评论

相关推荐

    [QT]获取鼠标坐标以及按键响应

    在这个特定的【QT】获取鼠标坐标以及按键响应的项目中,我们可以深入探讨以下几个关键知识点: 1. **QT事件处理**: QT中的事件处理是基于信号和槽机制的。当用户进行鼠标点击或键盘按键操作时,系统会产生相应的...

    java获取鼠标坐标位置swing

    标题"java获取鼠标坐标位置swing"指的是利用Java Swing来编程,实现在Swing组件上显示鼠标移动时的坐标位置。 首先,要获取鼠标坐标,我们需要导入必要的Java Swing库,如`javax.swing.*` 和 `java.awt.event.*`。...

    LabVIEW 调用user32.dll获取鼠标坐标

    本知识点将深入讲解如何利用LabVIEW调用`user32.dll`这个系统级库,获取鼠标坐标。 `user32.dll`是Windows操作系统中的一个重要组件,它提供了大量与用户界面相关的函数,包括对鼠标和键盘事件的处理。其中,`...

    易语言之获取鼠标坐标

    易语言之获取鼠标坐标.e易语言之获取鼠标坐标.e易语言之获取鼠标坐标.e易语言之获取鼠标坐标.e

    C#获取鼠标坐标源码2019

    本主题聚焦于“C#获取鼠标坐标”的技术,这是C#编程中常见的一个功能,涉及到事件处理和Windows API的使用。下面将详细介绍如何在C#中获取鼠标的当前位置。 1. **基础概念** - **事件处理**: 在C#中,当鼠标在界面...

    C#获取鼠标坐标源码

    在C#编程中,获取鼠标坐标是一项常见的任务,特别是在开发涉及用户交互的桌面应用程序时。以下将详细讲解如何在C#中实现这一功能,并提供相关的源码示例。 首先,我们要了解C#中的Windows Forms或WPF框架,这两个都...

    MFC实现获取鼠标坐标

    本文将详细讲解如何在MFC应用程序中实现获取鼠标坐标的机制。 首先,我们需要理解Windows消息系统。当鼠标在窗口上移动时,操作系统会发送WM_MOUSEMOVE消息给对应的窗口。在MFC中,我们可以重写CWnd类的OnMouseMove...

    网页实现全屏获取鼠标坐标

    标题"网页实现全屏获取鼠标坐标"提示我们关注的核心是实现一个功能,使得无论浏览器窗口大小如何,都能获取到鼠标的全局坐标,包括在窗体外的坐标。 描述中提到"自己制作控件实现网页获取窗体外鼠标坐标",这可能是...

    JQuery获取鼠标坐标

    在IT领域,特别是前端开发中,获取鼠标坐标是一项基本但重要的功能,它广泛应用于各种交互设计、游戏开发、数据采集等场景。通过JQuery或原生JavaScript,开发者可以轻松实现这一功能,为用户提供更加丰富和动态的...

    DELPHI获取鼠标坐标处颜色源码

    获取鼠标坐标是通过`TApplication`或`TForm`类的`MousePosition`属性实现的。`MousePosition`返回一个`TPoint`结构,包含了鼠标光标在屏幕上的X和Y坐标。例如: ```delphi var MousePos: TPoint; begin MousePos ...

    使用钩子获取鼠标坐标.rar

    本教程将详细介绍如何通过创建系统级鼠标钩子来获取鼠标坐标。 首先,我们需要了解什么是钩子。钩子是Windows消息处理系统的一部分,它允许应用程序设置一个“陷阱”,以便在特定事件发生时(如鼠标移动或按键)...

    .NET获取鼠标坐标源码

    在.NET框架中,获取鼠标坐标是一项常见的任务,尤其在开发交互性强的桌面应用程序时。C#作为.NET的主要编程语言,提供了丰富的API来处理鼠标事件和获取鼠标的当前位置。本篇文章将详细探讨如何在C#中获取鼠标坐标,...

    PyQt6鼠标标点示例程序 QLabel图片上获取鼠标坐标并显示红点

    ### PyQt6鼠标标点示例程序 QLabel图片上获取鼠标坐标并显示红点 本代码是使用PyQt6实现的图片上鼠标标点示例。用户可以通过鼠标点击在图片上标注点,并实时获取标注点的坐标。 ## 主要功能 1. **图片标注:** ...

    全局钩子获取鼠标坐标

    本篇将详细介绍如何通过全局钩子获取鼠标坐标,并探讨相关技术。 首先,我们需要理解全局钩子的工作原理。全局钩子是由安装钩子的进程创建的,它在系统消息队列中设置一个钩子函数,这个函数会在指定类型的事件发生...

    vb获取鼠标坐标及判断位置

    在VB(Visual Basic)编程中,获取鼠标坐标和判断其位置是常见的需求,尤其是在开发交互式应用程序时。本文将深入探讨如何使用VB实现这一功能,并介绍相关知识点。 首先,VB提供了一个名为`MousePosition`的全局...

    Javascript获取鼠标坐标的各种类型

    JavaScript获取鼠标坐标是Web开发中的常见需求,尤其在交互式应用和动态效果中扮演着重要角色。本篇文章将详细介绍各种JavaScript方法来获取鼠标位置,并解释它们的用途和差异。 首先,我们可以使用`event`对象来...

    获取鼠标坐标java

    JAVA中的swing 建立窗口,通过鼠标移动来获取鼠标在该窗口中的坐标

    C#获取鼠标坐标源码.rar

    在C#编程中,获取鼠标坐标是一项常见的任务,特别是在开发涉及用户交互的桌面应用程序时。这个压缩包"**C#获取鼠标坐标源码.rar**"很可能包含了一个或多个示例程序,展示了如何在C#中捕获并处理鼠标的移动事件,从而...

    VB058-获取鼠标坐标 源代码

    在VB(Visual Basic)编程中,获取鼠标坐标是一项基本但重要的任务,特别是在开发需要与用户交互的图形用户界面(GUI)应用时。本资源“VB058-获取鼠标坐标 源代码”提供了一个实用的例子,展示了如何在VB中实现这一...

Global site tag (gtag.js) - Google Analytics