我正在写一个脚本,它会反复将我的鼠标坐标写入元素。但我不确定如何检测鼠标的信息。有人想指向正确的方向吗?如何获取鼠标的坐标?
document.getElementById("coords").innerHTML = crdX + ", " + crdY
编辑:我的问题是不是提出问题的复制,因为所提出的问题是关于同一问题的循环方面,而我的是关心“事件处理'方面。我确实阅读并试图确定我需要的信息,但由于我是初学者,我发现他们的代码难以阅读。
我正在写一个脚本,它会反复将我的鼠标坐标写入元素。但我不确定如何检测鼠标的信息。有人想指向正确的方向吗?如何获取鼠标的坐标?
document.getElementById("coords").innerHTML = crdX + ", " + crdY
编辑:我的问题是不是提出问题的复制,因为所提出的问题是关于同一问题的循环方面,而我的是关心“事件处理'方面。我确实阅读并试图确定我需要的信息,但由于我是初学者,我发现他们的代码难以阅读。
您需要附加一个MouseEvent,并且传递给处理程序的事件对象将为您提供坐标。如果你想跟踪到处移动,请将其附加到文档中。 clientX
和clientY
属性给你本地坐标,而screenX
和screenY
给你全局坐标。
小提琴:http://jsfiddle.net/AtheistP3ace/7pj9gpvn/4/
HTML:
<p id="coords"></p>
<p id="coords2"></p>
JS:
document.addEventListener('mousemove',
function (event) {
var para = document.getElementById('coords');
para.textContent = event.clientX + ", " + event.clientY;
var para2 = document.getElementById('coords2');
para2.textContent = event.screenX + ", " + event.screenY;
}
);
随意也读了它自己:https://developer.mozilla.org/en-US/docs/Web/Events/mousemove
尝试这适用于所有的浏览器
<html>
<body>
<form name="mShow">
<input type="text" name="MX" value="0" size="4"> X
<br>
<input type="text" name="MY" value="0" size="4"> Y
<br>
</form>
<script language="JavaScript1.2">
var IE = document.all ? true : false
if (!IE) document.captureEvents(Event.MOUSEMOVE)
document.onmousemove = getMouse;
var tempX = 0
var tempY = 0
function getMouse(e) {
if (IE) {
tempX = event.clientX + document.body.scrollLeft
tempY = event.clientY + document.body.scrollTop
} else {
tempX = e.pageX
tempY = e.pageY
}
if (tempX < 0) {
tempX = 0
}
if (tempY < 0) {
tempY = 0
}
// ADD TEMP VALUE FOR FIELDS
document.mShow.MX.value = tempX
document.mShow.MY.value = tempY
return true
}
</script>
</body>
</html>
那你尝试了吗? – ashes999