Mik*_*ala -3 javascript window maximize page-zoom device-width
我知道这听起来很奇怪,但确实有一个原因,而且这符合用户的最大利益。我知道让浏览器自动最大化并设置为100%可能会出现问题,但是如何进行设置,以使如果窗口未最大化且缩放比例未达到100%,所有用户将看到一条消息“请最大化您的窗口并设置放大到100%”。我需要至少在Chrome,Firefox和IE中使此工作。
我不是试图使其成为“全屏模式”,而是最大化窗口。
如果在“保持” 100%和最大窗口的意义上“强制”是有问题的,将缩放比例设置为100%并在初始加载时最大化窗口会怎么样?
您可能需要检查文档的宽度是否小于屏幕宽度:
var isAtMaxWidth = screen.availWidth - window.innerWidth === 0;
Run Code Online (Sandbox Code Playgroud)
但是,您不能使用高度来做到这一点,因为浏览器为选项卡和工具栏保留了垂直空间,并且无法获取其高度。
根据user800583的回答,以下是简化版本:
var screenPixelRatio = (window.outerWidth - 8) / window.innerWidth;
var isAtDefaultZoom = screenPixelRatio > 0.92 && screenPixelRatio <= 1.10;
Run Code Online (Sandbox Code Playgroud)
注意:您不能使用它window.devicePixelRatio来检测,因为高DPI(例如:视网膜)显示将具有不同的基本值。
var isMaximizedAndDefaultZoom = isAtMaxWidth && isAtDefaultZoom;
Run Code Online (Sandbox Code Playgroud)
截至2018年3月6日在Chrome 64上进行测试并可以使用