我对“视口”的定义是浏览器边框(可见区域+滚动条)之间的所有内容
如您所见,我尝试过:
每个人说的Internet Explorer 7错误是offset *和getBoundingClientRect()不包含滚动条
答案 0 :(得分:1)
隐藏滚动条,在下一行代码中获取宽度/高度并再次显示滚动条。
// Hide scrollbars
document.body.style.overflow = "hidden";
// Get width/height
var width = document.body.offsetWidth;
// Reset scrollbars before the UI repaints
document.body.style.overflow = "";
alert(width);
//-> 1600 (on my display)
这一切都会在显示更新之前发生,因此滚动条不会闪烁,你将拥有完整的尺寸。