当我在 Firefox 中加载包含某些类型广告的某些网页时,包括https://www.wccftech.com/和https://www.techspot.com/,浏览器可能会在 UI 级别挂起(我无法选择其他选项卡或打开 Firefox 菜单),每次大约五秒钟,同时页面加载。这种情况可能会在页面加载过程中发生几次,直到加载完成。
这发生在 2018 款 HP ENVY x360 13(配备 Ryzen 7 处理器和 Windows 10 Home)上的 Firefox 63.0.3 上。确实如此不是在我运行 Firefox 的任何其他设备上也会发生这种情况。
是什么赋予了?
答案1
事实证明,Firefox 中的 HTML5 设备传感器 API 存在问题,导致出现这些死机,我怀疑这与系统的底层物理传感器、其驱动程序或 Firefox 中的 API 实现有关(系统上至少有一个方向传感器,因为二合一笔记本电脑需要能够检测方向才能自动切换模式)。禁用 Firefox 中的设备传感器功能解决了这个问题。这可以通过转到about:config
并设置device.sensors.enabled
为 来完成false
。
我在加载有问题的页面时通过监视 Firefox 开发人员工具中的 JS 控制台成功诊断了这个问题。每次浏览器挂起后,我都会在控制台中收到以下警告之一或两者:
不推荐使用方向传感器。
不推荐使用运动传感器。
这让我相信 Firefox 处理传感器 API 调用的方式存在问题,并提示我找到解决方案。