Oleg Ovcharenko Asked:2020-05-06 16:16:57 +0000 UTC2020-05-06 16:16:57 +0000 UTC 2020-05-06 16:16:57 +0000 UTC 如何获取元素相对于其所在块的坐标? 772 单击时如何获取元素相对于其所在块的坐标?没有 jQuery。 从图中了解顶部和左侧。相对于中心块。通过点击蓝色方块。 javascript 1 个回答 Voted Best Answer Denis Bubnov 2020-05-06T17:20:24Z2020-05-06T17:20:24Z 没有 jQuery,你可以在 JavaScript 中: function position() { var obj = document.getElementById('inside'); // берем интересующий элемент var posX = obj.offsetTop; // верхний отступ эл-та от родителя var posY = obj.offsetLeft; // левый отступ эл-та от родителя console.log('x=[' + posX + '] y=[' + posY + ']'); // печатаем координаты } .center { height: 200px; width: 300px; } .inside { position: absolute; margin-top: 55px; margin-left: 51px; height: 10px; width: 10px; background: blue; } <body> <div class="center"> <div id="inside" class="inside" onclick="position();"> </div> </div> </body> 查看元素的定位: 上:55 + 8 = 63 左:51 + 8 = 59 我们得到的结果是:x=[63] y=[59] 参考链接: HTMLElement.offsetTop HTMLElement.offsetLeft 节点父元素 使用 jQuery: 要获取相对于父元素的当前位置 - 您可以使用position. position() - 获取顶部和左侧元素相对于其父级填充的位置。此外,还有一种偏移方法可以获取元素相对于文档的当前坐标。使用.offset() 和 .position()函数,您可以获得页面上元素的坐标。此外,使用 offset(),您可以更改元素的坐标。有几个使用函数的选项,链接中有更多详细信息:元素位置。
没有 jQuery,你可以在 JavaScript 中:
查看元素的定位:
上:
55 + 8 = 63左:
51 + 8 = 59我们得到的结果是:
x=[63] y=[59]参考链接:
使用 jQuery:
要获取相对于父元素的当前位置 - 您可以使用
position. position() - 获取顶部和左侧元素相对于其父级填充的位置。此外,还有一种偏移方法可以获取元素相对于文档的当前坐标。使用.offset() 和 .position()函数,您可以获得页面上元素的坐标。此外,使用 offset(),您可以更改元素的坐标。有几个使用函数的选项,链接中有更多详细信息:元素位置。