2017-05-09 3 views
2

Wie tatsächliche Höhe ohne jQuery

var test = document.getElementById('test'); 
 
console.log(test.offsetHeight);
<div style="height: 30px;" id="test"> 
 
    <p>ffffffffff</p> 
 
    <p>gggggggggg</p> 
 
    <p>aaaaaaaaaa</p> 
 
    <p>dddddddddd</p> 
 
</div>
Wie Sie zu sehen bekommen, ist der Inhalt in test div overflow und mehr als 30px: so, wie genau die Höhe zu bekommen?

+2

Mögliche Duplikat [Get div Höhe mit einfachen JavaScript] (http://stackoverflow.com/questions/15615552/get-div-height-with-plain-javascript) – KarelG

Antwort

0

Versuchen Sie folgendes:

window.getComputedStyle(document.getElementById('test')).height 
0

Versuch:

var test = document.getElementById('test'); 
alert(test.clientHeight); 
0

bereits.

var offsetHeight = document.getElementById('test').offsetHeight; 
2

var test = document.getElementById('test'); 
 
alert(test.scrollHeight);
<div style="height: 30px;" id="test"> 
 
    <p>ffffffffff</p> 
 
    <p>gggggggggg</p> 
 
    <p>aaaaaaaaaa</p> 
 
    <p>dddddddddd</p> 
 
</div>

versuchen scrollHeight

0

Sie können entweder .clientHeight oder .offsetHeight; verwenden.

Was ist der Unterschied?

.clientHeight enthält Auffüllen.

.offsetHeight enthält Füllung, Bildlaufleiste und Rahmen.

var clientH = document.getElementById('test').clientHeight; 
 
var offsetH = document.getElementById('test').offsetHeight; 
 

 

 
console.log(clientH); 
 
console.log(offsetH);
<div style="height: 30px;" id="test"> 
 
    <p>ffffffffff</p> 
 
    <p>gggggggggg</p> 
 
    <p>aaaaaaaaaa</p> 
 
    <p>dddddddddd</p> 
 
</div>

Verwandte Themen