JavaScript clientHeight

admin發表於2018-09-03

此屬性可以返回指定元素客戶區高度,單位預設是畫素。

客戶區高度 = height屬性值 + padding-top + padding-bottom。

clientHeight是隻讀屬性,不能進行賦值操作。

語法結構:

[JavaScript] 純文字檢視 複製程式碼
dom.clientHeight

圖示如下:

a:3:{s:3:\"pic\";s:43:\"portal/201809/03/094058o5z1c2zja165khw2.jpg\";s:5:\"thumb\";s:0:\"\";s:6:\"remote\";N;}

clientHeight返回的就是圖中白色區域的高度。

程式碼例項如下:

[HTML] 純文字檢視 複製程式碼執行程式碼
<!DOCTYPE html>
<html>
<head>
<meta charset=" utf-8">
<meta name="author" content="http://www.softwhy.com/" />
<title>螞蟻部落</title>
<style type="text/css">
#ant{
  width:200px;
  height:100px;
  line-height:100px;
  background:red;
  border:10px solid green;
  padding:20px;
  text-align:center;
}
</style>
<script>
window.onload=function(){
  odiv=document.getElementById("ant");
  odiv.innerHTML=odiv.clientHeight;
}
</script>
</head>
<body>
<div id="ant"></div>
</body>
</html>

上述程式碼可以計算出clientHeight屬性值為140,並將其寫入div中。140=100+20+20。

特別說明:此屬性返回的是一個數字140,不帶單位,但預設單位是畫素。

[HTML] 純文字檢視 複製程式碼執行程式碼
<!DOCTYPE html>
<html>
<head>
<meta charset=" utf-8">
<meta name="author" content="http://www.softwhy.com/" />
<title>螞蟻部落</title>
<style type="text/css">
#ant{
  width:200px;
  height:100px;
  background:red;
  border:10px solid green;
  padding:20px;
  text-align:center;
  overflow:auto
}
#inner {
  height:50px;
  width:300px;
  background-color:#ccc;
}
</style>
<script type="text/javascript">
window.onload=function(){
  var odiv = document.getElementById("ant");
  var ospan = document.getElementById("show");
  ospan.innerHTML = odiv.clientHeight;
}
</script>
</head>
<body>
<div id="ant">
  <div id="inner"></div>
</div>
<span id="show"></span>
</body>
</html>

實際應用中,可能元素的子元素較寬,可能會出現橫向滾動條。

此滾動條在垂直方位上必然有一個厚度,當前谷歌瀏覽器中值為17px,其他瀏覽器不得而知,感興趣的朋友可以自行測試。這個厚度不包括在clientHeight之中。

上面clientHeight的計算方式:

height屬性值 + padding-top + padding+bottom - 滾動條厚度 = 100 + 20 + 20 - 17 = 123。

相關文章