我制作了一个脚本,将我的“Angular 色”(元素 ID=“Angular 色”)移动到我单击的位置。但我需要获取它的位置,这样我就可以让它“走到”我点击的地方,而不是仅仅出现在那里。
这是我的代码:
<html>
<head>
<script type="text/javascript">
function showCoords(evt){
document.getElementById("character").style.left = evt.pageX;
document.getElementById("character").style.top = evt.pageY;
}
</script>
</head>
<body onmousedown="showCoords(event)">
<div id="character" style="position: absolute; top: 100px; width: 80px; height: 40px; background:black;"> Char </div>
</body>
</html>
基本上我只想在函数开始时检索元素的水平和垂直位置。这样我以后就可以使用这些变量。我该怎么做?
谢谢
最佳答案
如果您只需要它在相当现代的浏览器中工作,那么 document.getElementById("character").getBoundingClientRect()
将具有 left
和 top
属性为您提供距视口(viewport)的偏移量。
关于javascript - 使用javascript获取元素的水平和垂直位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5864423/