gpt4 book ai didi

javascript - 在浏览器窗口中检测另一个应用程序(包括百分比重叠)

转载 作者:数据小太阳 更新时间:2023-10-29 03:53:02 26 4
gpt4 key购买 nike

有没有办法检测应用程序(比如聊天客户端或 msword)是否在我的浏览器窗口顶部。

一种方法是检查焦点。但这并不能绝对说明另一个程序在整个屏幕上位于浏览器的“可查看”区域之上。

如果可以查看完整的浏览器,但焦点在文档/聊天客户端这个词上怎么办。

编辑:

从一家做这个的公司找到了一个示例演示 http://www.spider.io/vStp83jg6/

最佳答案

我不认为这需要 flash 或任何插件,为了有效这必须基于 CSS 和 Javascript。

浏览器的安全沙箱阻止从操作系统访问此信息。

他们唯一可以跨浏览器一致地做的事情是检测某种副作用,即浏览器窗口被另一个窗口隐藏这一事实。

可以检测到的副作用之一是浏览器是否对绘画元素进行了渲染优化

根据 spider.io viewability视频,他们已经根据浏览器渲染优化检测来检测添加是否可见。

如果一个add不可见,那么针对该段页面的渲染优化开始,该段页面的渲染会变慢,以节省内存和CPU资源,加快渲染速度页面的可见部分。

同样的技术可以用来检测浏览器窗口是否被隐藏。

如果他们检测到在可见视口(viewport)的 4 个 Angular 和页面中心等多个区域正在进行渲染优化,他们可以安全地假设该应用程序被另一个外部应用程序隐藏,或者计算重叠百分比的估计值.

他们没有详细说明他们是如何做到的,但由于它是基于速度测量的,所以可能是这样的:

一种可用于检测另一个窗口是否隐藏浏览器的方法:

创建一个小的不可见的基于 CSS3 或 Javascript 的动画,为页面不同部分的不可见元素设置动画。动画不应影响页面的性能,可以随意启动/停止。

测量页面启动时的动画时间,并取平均值。如果页面被另一个操作系统窗口隐藏,则会启动渲染优化并且动画运行所需的时间会更长。

在这里查看 browser API检测 CSS3 动画的开始和停止,这可能是一种实现方法。

关于javascript - 在浏览器窗口中检测另一个应用程序(包括百分比重叠),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20947836/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com