知识点:offsetWidth:获取到的值是width+padding+border;
clientWidth: 获取对象可见内容的宽度,不包括滚动条,不包括边框;
function getScrollbarWidth() {
var odiv = document.createElement('div'),//创建一个div
styles = {
width: '100px',
height: '100px',
overflowY: 'scroll'//让他有滚动条
}, i, scrollbarWidth;
for (i in styles) odiv.style[i] = styles[i];
document.body.appendChild(odiv);//把div添加到body中
scrollbarWidth = odiv.offsetWidth - odiv.clientWidth;//相减
odiv.remove();//移除创建的div
return scrollbarWidth;//返回滚动条宽度
}
方法使用
let scrollbarWidth = getScrollbarWidth()
参考文章: JS获取浏览器滚动条的宽度
本文介绍了一种通过JavaScript计算浏览器滚动条宽度的方法。利用创建临时div元素并设置滚动属性,对比offsetWidth与clientWidth的差值来获取滚动条的实际宽度。此技巧适用于网页布局调整,确保页面在不同设备上的一致性。
6217

被折叠的 条评论
为什么被折叠?



