javascript - 为什么 window.innerWidth 没有返回正确的值?

标签 javascript html width viewport

我正在尝试解决使用 Javascript 确定浏览器“窗口”宽度的问题。我知道不同的人在这种情况下可能有不同的意思,所以具体来说,我指的是绿色区域,如 this发布。

我已经阅读了对该帖子的前两个回复以及针对此问题的其他一些 stackoverflow 解决方案,但我无法开始工作: 1920 像素宽。脚本说我的视口(viewport)是 1536 像素宽。我预计 1920 年(或接近)。

根据我所见,在我看来最简单的解决方案是这段代码:

<html>
<head>
<script type="text/javascript">
function onAfterLoad() {
    document.write('<p>Your viewport width is '+window.innerWidth+'</p>');
}
</script>
</head>
<body onload="onAfterLoad();">
</body>
</html>

在编写这段代码时是 here .这也表明我的视口(viewport)宽度为 1536 像素,而我认为它应该是 1920。

请问我哪里出错了?

最佳答案

对我来说,这个问题是浏览器缩放的结果。 尝试控制+滚轮,看看这是否会改变您得到的结果。 如果是,请参阅 How to detect page zoom level in all modern browsers?

关于javascript - 为什么 window.innerWidth 没有返回正确的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22113217/

相关文章:

javascript - Jinja 将引号转换为 &#39

php - 如何使用 PHP/HTML 保留空格格式?

html - 如何同时使用固定和可伸缩的 CSS 内容

html - 如何让三个元素填充一个 div,其中中心元素具有动态宽度?

Javascript 点击功能不适用于自动打开

javascript - 仅在页面刷新后加载 Jquery 脚本

Javascript:将日期时间转换为 DD/MM/YYYY - 时间?

html - 当窗口大小减小时,使用媒体查询来增加我的主体容器的高度大小时,它将不起作用。

html - <div> 标签内的文本 - 语义正确与否?

javascript - 如何使用javascript在div上设置等宽