使用坐标设置div位置

RAV*_*ADA 3 javascript javascript-events

我有一个网页(jsp),其中包含另一个使用

     <%@jsp:include ... %>
Run Code Online (Sandbox Code Playgroud)

当我点击第二部分(包含的页面)时,使用

    window.event.clientX 
    window.event.clientY
Run Code Online (Sandbox Code Playgroud)

并分别存储到 x 和 y 中。现在我将一个 div 设置为在该鼠标坐标处可见,例如,

    document.getElementById('division').style.top=x;
    document.getElementById('division').style.left=y;
Run Code Online (Sandbox Code Playgroud)

正如预期的那样,在鼠标单击的同一位置显示该 div。但是分裂正在其他地方出现..

这是什么原因??

jfr*_*frm 5

top 属性是一个字符串。尝试document.getElementById('division').style.top=x + 'px';

我尝试了以下代码,它适用于 IE 和 Firefox。onclick 适用于 IE, addEventListener 适用于兼容的浏览器。

<div id="clickMe" style="position: absolute; top: 10px;" onclick="myClick();">
    clickMe
</div>
<div id="division" style="position: absolute; top: 40px;">
    division
</div>
<script type="text/javascript">
    var clickMe = document.getElementById('clickMe');
    clickMe.addEventListener('click', myClick, 'false');

    function myClick(e) {
        var evt = e || window.event; //windows.event is for IE
        var x = evt.clientX;
        var y = evt.clientY;            
        document.getElementById('division').style.top = y + 'px';
        document.getElementById('division').style.left = x + 'px';
    }
</script>
Run Code Online (Sandbox Code Playgroud)