首页 > 解决方案 > 带有 Electron (Chrome) 的 Windows 10 中的 window.screenX 不一致

问题描述

我试图定位一个元素相对于整个屏幕的中心点,为此我使用 window.screenX 和 window.screenY 来计算窗口在屏幕上的位置。

我看到与 window.screenX 非常奇怪的不一致,我不确定原因是什么。

如果我的窗口最大化,它会按预期返回 0。

但是,如果我的窗口没有最大化并且窗口位于屏幕边缘,它会返回 -7。

在全屏模式下 window.screenX 和 window.screenY 都返回 8。

正如你可以想象的那样,这偏离了我的中心点,我真的不知道是什么原因造成的。这是 Windows 特定的问题吗?某种错误?还有其他方法可以抓取元素相对于屏幕的中心点吗?

感谢您的帮助。

编辑:我认为这可能与 Windows 10 中的窗口阴影有关。我关闭了阴影但仍然得到相同的结果。

Edit2:对于以后可能会阅读此内容的任何人,这不是 Electron 独有的。一种解决方法(但不理想)可能是移除窗框。我愿意接受更多建议。

标签: javascriptwindowselectron

解决方案


推荐阅读