我正在使用这段代码来确定客户端屏幕分辨率,然后记录它
<input type="hidden" id="DFF63C7E-FB32-49AE-8ADA-3AB5C4834FB0" name="DFF63C7E-FB32-49AE-8ADA-3AB5C4834FB0"/>
<input type="hidden" id="565C07CF-0D37-41DE-B47D-A247E9BD231B" name="565C07CF-0D37-41DE-B47D-A247E9BD231B" />
<script type="text/javascript" language="javascript">
document.getElementById("DFF63C7E-FB32-49AE-8ADA-3AB5C4834FB0").value = screen.width;
document.getElementById("565C07CF-0D37-41DE-B47D-A247E9BD231B").value = screen.height;
</script>
在我的本地主机上测试时它工作正常,但我从生产日志中发现屏幕分辨率始终为 480x640。有谁知道为什么会这样?
我做了更多挖掘,发现我可以更改主显示器的分辨率,无论我是否在主/辅助显示器中打开浏览器,它总是会给我主显示器的分辨率。
有什么方法可以根据打开浏览器的显示器获取屏幕分辨率吗?
显然下一个问题是,如果分辨率在中途发生变化(比如从控制面板)或将浏览器从一个浏览器移动到另一个浏览器,是否有办法用 JS 检测/更新它?
最佳答案
- 您的生产 PC 可能真的有 640*480 屏幕分辨率。有理由怀疑吗?
- Javascript 无法脱离其虚拟机以查看真实主机,因此您必须通过与检测屏幕分辨率相同的方式实现更新机制,无论它是什么。
关于javascript:在有多台显示器时查找屏幕分辨率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2134221/