如何使用js获取实际屏幕大小(屏幕分辨率)
我只是想知道是否存在以js表示的屏幕实际大小(屏幕分辨率)。
- 我知道
screen
接口,但它的结果不是我想要的。
screen;
// Screen {availWidth: 1680, availHeight: 973, width: 1680, height: 1050, colorDepth: 30, …}
screen.width;
// 1680
screen.height;
// 1050
我得到了width: 1680, height: 1050
;
实际上屏幕尺寸是2880 x 1800
;
我的屏幕截图
那么,任何人都可以帮助吗?
解决方案
屏幕分辨率≠窗口宽度
更改屏幕dpi的大多数操作系统都会使用os dpi返回屏幕大小。例如,我的屏幕分辨率为1920x1080,而Windows默认dpi为125,因此js creen.width返回1600px
使用此选项:
function getResolution() {
const realWidth = window.screen.width * window.devicePixelRatio;
const realHeight = window.screen.height * window.devicePixelRatio;
console.log(`Your screen resolution is: ${realWidth} x ${realHeight}`);
}
// test
getResolution();
// Your screen resolution is: 3840 x 2160
相关文章