我刚才把这个小小的鼠标跟踪示例放在一起时,我意识到,它会在Chrome控制台中抛出数千个错误。javascript的onmousemove/event.clientX正在工作,但引发错误
Uncaught TypeError: Cannot read property 'clientX' of undefined
AFAIK这意味着,chrome找不到该属性所属的对象。但是,如果我打开示例,它将显示正确的坐标。请帮我摆脱这些无用的错误。
<html>
<head>
<style type="text/css">
#tracking {
width: 300px;
height: 300px;
background-size: 300px 300px;
background-color: #00F;
left: 100px;
top: 100px;
position: absolute;
}
</style>
<script type="text/javascript">
var mX, mY;
var track;
document.onmousemove = update;
function trackload()
{
track = document.getElementById("tracking");
setTimeout("update()",10);
}
function update(e)
{
mX = e.clientX;
mY = e.clientY;
if (track) {
track.innerHTML = "X: " + mX + " Y: " + mY + " deg: " + (Math.atan(mY/mX) * (180/Math.PI));
track.style.cssText = "-webkit-transform: rotate(" + (Math.atan(mY/mX) * (180/Math.PI)) + "deg);";}
setTimeout("update()",10);
}
</script>
</head>
<body>
<div id="tracking" onclick="trackload()"></div>
</body>
我现在觉得很愚蠢。当然,这有效(: – jangxx 2012-04-23 19:11:54