获得鼠标坐标的问题

时间:2012-12-21 06:12:37

标签: javascript javascript-events

我使用下面的代码捕获鼠标坐标,并将其绑定到div(容器)。在“容器”中还有一个名为“subDiv”的div。我发现无论我在'subDiv'里面移动,坐标总是我刚进入'subDiv'的坐标(例如,我在(10,10)输入'subDiv',无法在'subDiv'中移动,坐标总是(10,10))。 有谁知道为什么?
var x,y;
var e = e||window.event;
return {
x:e.clientX+document.body.scrollLeft+document.documentElement.scrollLeft,
y:e.clientY+document.body.scrollTop+document.documentElement.scrollTop
};

1 个答案:

答案 0 :(得分:1)

您粘贴的内容与以下演示相同。检查其他代码。

<!DOCTYPE html>
<html>
    <head>
        <script>
            function test(e){
                var x,y;
                var e = e||window.event;
                return {
                    x:e.clientX+document.body.scrollLeft+document.documentElement.scrollLeft,
                    y:e.clientY+document.body.scrollTop+document.documentElement.scrollTop
                }; 
            }
            function myFunction(event){
                var x = test(event);
                document.getElementById("demo").innerHTML=x.x + '.' + x.y;
            }
        </script>
    </head>

    <body>
        <div id="container">
            <div id="subDiv" style="width:199px;height:99px;border:1px solid"  onmousemove="myFunction(event)"></div>
        </div>
        <p id="demo"></p>
    </body>
</html>