【发布时间】:2021-04-03 19:12:10
【问题描述】:
我正在尝试在 Chrome 中获取浏览器窗口的正确宽度和高度。火狐浏览器大小正确,其他浏览器没试过。
我已将文档类型设置为!DOCTYPE html,并尝试了$( window ).height()、$( window ).width()、window.innerHeight 和window.innerWidth,但它们都给出了错误的值。
我正在运行 openSuse tumbleweed,chrome 的版本是“Version 86.0.4240.75 (Official Build) (64-bit)”
将 chrome 更新为“版本 87.0.4280.88(官方构建)(64 位)”这也没有帮助,仍然是错误的大小。
我在图像中包含了一些显示这一点的图像,注意:DOMRect 值在 chrome 中不正确,但在 Firefox 中是正确的。抱歉,您可能需要放大才能查看这些值。下面是我在两张图片中记录的内容。
console.log(
$('#primary')[0].getBoundingClientRect(),
$( window ).width(),
window.innerWidth,
$( window ).height(),
window.innerHeight
)
我需要精确的尺寸才能正确排列。您可以在水平滚动条上方的背景颜色“红色”下方的 Firefox 图像中看到。我需要知道窗户的正确尺寸 这样我就可以进行数学计算并把事情排好。
还有其他更准确的方法吗?
下面的图片是我从“FSDford”下面的评论中建议的 JSFiddle 得到的。您可以在控制台中看到红色的 877 尺寸“需要放大才能看到”。尺子说它的宽度是856! Firefox 再次具有正确的宽度。
【问题讨论】:
-
你在这里得到的宽度值是多少? jsfiddle.net/Rino_Raj/m2xn6ue7
-
我按照建议做了,上图是我的结果。
-
只是在黑暗中拍摄:滚动条宽度在这里得到多少:jdsharp.us/jQuery/minute/calculate-scrollbar-width.php
-
@DanielHuckson 页面的宽度可能会因填充而关闭。您可以尝试设置 box-sizing: border-box;在 CSS 中的 html 和 body 标签上。不要忘记将 html 和 body 的 padding 和 margin 都设置为 0px,因为它们默认有 padding。
-
css 检查器中计算的窗口大小是多少?
标签: javascript jquery