Πώς μπορείτε να λάβετε το ύψος ενός στοιχείου;

Πώς μπορείτε να λάβετε το ύψος ενός στοιχείου;

Ας πούμε ότι έχετε ένα στοιχείο <div> με κάποιο περιεχόμενο μέσα. Αυτό το περιεχόμενο μέσα πρόκειται να τεντώσει το ύψος του <div>. Πώς παίρνετε το "rendered" ύψος όταν δεν έχετε'ορίσει ρητά το ύψος. Προφανώς, δοκίμασα:

var h = document.getElementById('someDiv').style.height;

Υπάρχει κάποιο κόλπο για να το κάνετε αυτό; Χρησιμοποιώ jQuery αν αυτό βοηθάει.

Δοκιμάστε ένα από τα εξής:

var h = document.getElementById('someDiv').clientHeight;
var h = document.getElementById('someDiv').offsetHeight;
var h = document.getElementById('someDiv').scrollHeight;

Το clientHeight περιλαμβάνει το ύψος και το κάθετο padding.

Το offsetHeight περιλαμβάνει το ύψος, το κάθετο padding και τα κάθετα όρια.

Το scrollHeight περιλαμβάνει το ύψος του περιεχόμενου εγγράφου (θα είναι μεγαλύτερο από το απλό ύψος σε περίπτωση κύλισης), το κάθετο padding και τα κάθετα όρια.

Σχόλια (6)
Λύση

Θα πρέπει απλά να είναι

$('#someDiv').height();

με jQuery. Αυτό ανακτά το ύψος του πρώτου στοιχείου στο τυλιγμένο σύνολο ως αριθμό.

Προσπαθώντας να χρησιμοποιήσετε

.style.height

λειτουργεί μόνο αν έχετε ορίσει την ιδιότητα εξαρχής. Δεν είναι πολύ χρήσιμο!

Σχόλια (8)

Έχετε ορίσει το ύψος στο css συγκεκριμένα; Αν δεν το έχετε κάνει, θα πρέπει να χρησιμοποιήσετε το offsetHeight; αντί για το height.

var h = document.getElementById('someDiv').style.offsetHeight;
Σχόλια (1)