【发布时间】:2010-01-25 17:32:09
【问题描述】:
我正在使用这段代码来确定客户端屏幕分辨率,然后记录它
<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>
在我的 localhost 中测试时运行良好,但我从生产日志中发现屏幕分辨率始终为 480x640。有谁知道为什么会这样?
我做了更多的挖掘,发现我可以改变我的主显示器的分辨率,无论我是否在主显示器/辅助显示器中打开我的浏览器,它总是会给我主显示器的分辨率。
有什么方法可以根据浏览器打开的显示器来获取屏幕分辨率?
显然,下一个问题是,如果分辨率在中途发生变化(比如从控制面板)或将浏览器从一个移动到另一个,有没有办法用 JS 检测/更新它?
【问题讨论】:
-
480x640 是一种特殊的分辨率,就像手机处于纵向模式一样。这是一个智能手机网站吗?无论浏览器如何,它都会报告此值?
-
它是一个“内部”网站,用户只使用 IE。不,它不适用于智能手机
标签: javascript screen browser multiple-monitors screen-resolution