获取Javascript中DOM元素的screenX

Get screenX for DOM element in Javascript

本文关键字:screenX 元素 DOM Javascript 获取      更新时间:2023-09-26

当我在一个元素上监听mouseover时,我会触发一个事件,该事件包含screenX、clientX、pageX和许多其他关于鼠标相对于屏幕和触发事件的元素的详细信息。

如果我只是调用element.mouseover(),我的处理程序就会运行,但鼠标位置和其他属性都为null。我看了initMouseEvent,但它需要指定screenX,我不知道。

我的问题是,如何在鼠标不在元素上甚至不在窗口中的情况下获得这些值?

在Javascript中:

function getScreenCoords(element) {
    let rect = element.getBoundingClientRect();
    return {
            x: window.screenX + rect.left,
            y: window.screenY + rect.top
        }
}