Javascript 为什么document.elementFromPoint受指针事件影响:无?

Javascript 为什么document.elementFromPoint受指针事件影响:无?,javascript,css,Javascript,Css,如果使用document.element frompoint(x,y),并且在提供的坐标处有多个元素,则应返回最顶层的元素(视觉堆叠顺序中的最顶层,而不是源代码) 如果最上面的元素在CSS中设置了指针事件:none,则document.elementFromPoint不会看到它。演示了效果 这是故意的行为吗?浏览器似乎在您提供的坐标处触发了一个单击事件(一个秘密单击事件,它不会触发附加的单击处理程序或默认行为),以查找元素。有没有办法了解document.elementFromPoint是如何在

如果使用
document.element frompoint(x,y)
,并且在提供的坐标处有多个元素,则应返回最顶层的元素(视觉堆叠顺序中的最顶层,而不是源代码)

如果最上面的元素在CSS中设置了
指针事件:none
,则
document.elementFromPoint
不会看到它。演示了效果

这是故意的行为吗?浏览器似乎在您提供的坐标处触发了一个单击事件(一个秘密单击事件,它不会触发附加的单击处理程序或默认行为),以查找元素。有没有办法了解
document.elementFromPoint
是如何在不同的浏览器中实现的?CSS属性会影响完全不相关的DOM函数的行为,这似乎很奇怪

我只在最新的Chrome上测试过这个。我敢肯定,每个浏览器对此的处理方式都不同。我主要对基于webkit的浏览器感兴趣,但欢迎提供更多关于其他浏览器的信息。

告诉我们,元素是通过命中测试确定的,因此Chrome在这里似乎表现正常。其他浏览器可能会有不同的做法,但如果它们遵循规范,那么您应该预计
指针事件将阻止它工作


在规范的后面,它提到了目前W3C没有明确定义命中测试。但是,可以安全地假设他们至少使用了类似的东西。

我同意这个查询。当然,即使指针事件设置为“无”,也应该可以检测点下的元素。至少让它成为一种选择