在Javascript(最高可见元素)中的(x,y)坐标处查找元素

时间:2014-06-23 16:39:06

标签: javascript

我正在使用纯Javascript编写HTML调试器,并且在尝试模拟鼠标指针时遇到了障碍。我们的想法是将鼠标移动到" admin"页面和更改将反映在运行调试Javascript代码的客户端计算机上。我想"点击"在管理页面上,并定位客户端机器上的模拟游标所在的客户端DOM元素,用于css / remove操作。因此,我可以使用z-index,DOM顺序等计算图像下的哪个元素,但这会给客户端带来巨大负担,重点是尽可能保持此应用程序的精简程度。此外,浏览器已经在为鼠标进行这些计算,自己重写整个算法将是一种浪费(如果我有时间和耐心)。

是否有javascript功能或是否有特定于浏览器的API,我可以用它来确定哪个元素直接位于另一个元素下?

enter image description here

2 个答案:

答案 0 :(得分:2)

document.elementFromPoint应该适合你。如果您想要(x,y)坐标处的所有元素,则有许多elementsFromPoint的实现,例如https://gist.github.com/oslego/7265412

答案 1 :(得分:0)

我希望这会有所帮助。

document.body.addEventListener('mousemove', function (event) {
  console.log(event.target);
  event.target.style.backgroundColor = 'red';
}, false);