-1

我使用下面的代码来捕获鼠标坐标,并将其绑定到一个 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
};

4

1 回答 1

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>
于 2012-12-21T06:22:27.480 回答