javascript如何获取滚动条的宽度

快乐打工仔 分类:实例代码

大家知道当元素的内容超过父元素的时候,父元素可能就会出现滚动条(当然是否出现也要看具体的设置)。

下面就通过代码实例介绍一下如何获取滚动条的宽度。

代码实例如下:

<!DOCTYPE html>
<html>
<head>
<meta charset=" utf-8">
<meta name="author" content="http://www.pipipi.net/" />
<title>犀牛前端部落</title>
<style type="text/css">
#softwhy {
  width: 200px;
  line-height: 100px;
  background: red;
  border: 10px solid green;
  padding: 20px;
  text-align: right;
  font-size: 12px;
  overflow:scroll;
  text-align:center;
}
</style>
<script type="text/javascript">
window.onload=function(){
  odiv=document.getElementById("softwhy");
  odiv.innerHTML=200+20+20-odiv.clientWidth;
}
</script>
</head>
<body>
<div id="softwhy"></div>
</body>
</html>

上面的代码实现了我们的要求,下面介绍一下它的实现原理。

clientWidth值=width+padding-left+padding-right-滚动条宽度。

可以由上面推导出:

滚动条宽度=width+padding-left+padding-right-clientWidth。

clientWidth属性可以参阅clientWidth一章节。

回复

我来回复
  • 暂无回复内容