javascript - reactjs中如何知道浏览器是否显示滚动条?
问题描述
我正在研究反应项目。当我们将屏幕尺寸从大减小到小时,浏览器中会出现一个滚动条,结果我的测试用例失败了。我想知道有什么方法可以找到浏览器中是否显示滚动条所有类型的屏幕尺寸。还有什么方法可以获取浏览器中显示的滚动条的大小?
解决方案
您可以将内容的高度与窗口的高度进行比较。那么if (document.body.offsetHeight > window.innerHeight)
滚动条将是可见的。
UPD:关于滚动条的大小。它的宽度只是 和 的差值window.innerWidth
,document.body.offsetWidth
它的高度等于window.innerHeight
。所以总结一下:
let scrollbarSize = {
heigth: window.innerHeight,
width: window.innerWidth - document.body.offsetWidth
}
推荐阅读
- swift - 默认的 tableview 单元格不响应暗模式
- python - ModuleNotFoundError:没有名为“火炬”的模块
- r - 从全球温度的 netcdf 文件绘制范围时出错
- javascript - 安装 NPM 模块而不安装其依赖项
- php - Laravel 如何从另一个没有 1 对 1 关系的表中获取 id
- javascript - 在 Connect() 的上下文中找不到“商店”
- ios - Azure AD B2C 令牌端点返回范围斜杠
- reactjs - 如何将函数传递给不相关的组件
- c# - 如何使用 DIAPI C# 从 SAP B1 Add On 中删除销售订单行数据
- node.js - Mongoose 错误无法连接到服务器 [locahost:27017]