JSP 使用坐标设置div位置

jhkqcmku  于 2023-02-17  发布在  其他
关注(0)|答案(1)|浏览(212)

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

<%@jsp:include ... %>

当我点击第二部分(包括页面),获得坐标使用:

window.event.clientX 
    window.event.clientY

然后分别存储到x和y中。现在我把div设置为在鼠标坐标下可见,

document.getElementById('division').style.top=x;
    document.getElementById('division').style.left=y;

正如预期的那样,在鼠标单击的同一位置显示该div。但是该div将出现在其他位置。
原因何在?

k2arahey

k2arahey1#

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>

相关问题