javascript - 检测 Mac 和 Surface 上的窗口分辨率

标签 javascript jquery

在我的 Surface 和 MacBook 上,我将分辨率设置为 2160x1440,但我的代码:

$(window).height(); //return 960
$(window).height(); //return 1440

我已经在 Windows 上测试过了,它运行正常。这里有什么问题?

最佳答案

这是因为您使用的是 Retina 显示器。

您必须使用 window.devicePixelRatio 来计算实际分辨率。

编辑:http://ryanve.com/lab/resolution/ 上有很多关于分辨率和设备像素比的信息

一些重要的注意事项:

  • devicePixelRatio 定义因平台而异。
  • window.devicePixelRatio 相当于dppx
  • window.devicePixelRatio 在桌面上随着缩放而变化,但在移动设备上保持不变。设备像素比媒体查询也不同。

关于javascript - 检测 Mac 和 Surface 上的窗口分辨率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25258663/

相关文章:

Javascript 元素在 FF 和 Chrome 中被放置在不同的位置,为什么?

Jquery DataTable 在加载时自动滚动到底部

javascript - 未发送电子邮件时显示错误

jquery - 如何将 Typeahead.js 建议与跨域数据源联系起来?

javascript - 位置为 : absolute I'm not able to scroll down my content

jquery - legenditemclick 上的 Highcharts 饼图避免切片饼图,但在图例元素上显示动画

javascript - jQuery 隐藏父级及其所有子级

javascript - jquery widget事件处理中的"ui"参数

javascript - Vue.js 独立中的 Handsontable

php - 将php数组转换为Javascript