Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

252
Views
¿Cómo obtener la altura exacta del contenido dentro del div usando javascript?

Estoy tratando de obtener la altura exacta del contenido dentro del div. Puedo obtener el valor exacto cuando no hay una imagen dentro del contenedor. pero si hay una imagen dentro, da un resultado incorrecto, ¿por qué?

Estoy usando clientHeight y offsetHeight ambos dan un resultado incorrecto.

aquí está mi código https://codesandbox.io/s/cold-browser-dxj51?file=/index.html:907-919

 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <meta http-equiv="X-UA-Compatible" content="ie=edge" /> <title>Static Template</title> <style> * { padding: 0; margin: 0; } .container { padding: 20px; width: 200px; background-color: #eeeeee; } .logo img { width: 100%; } .logo { padding-bottom: 30px; } </style> </head> <body> <div class="container"> <div class="logo"> <img src="1.png" /> </div> <div class="abc"> This is a static template, there is no bundler or bundling involved! </div> </div> <script> console.log(document.querySelector(".container").clientHeight); console.log(document.querySelector(".container").offsetHeight); </script> </body> </html>

Salida esperada : 154px+ 20px+20px =(194px)

misalida : 142px

ingrese la descripción de la imagen aquí

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

El problema es que su javascript no está esperando la carga completa de la imagen antes de verificar su altura. Puede usar el detector de eventos "cargar" para activar con éxito el script que desea, una vez que los recursos dependientes hayan terminado de cargarse:

 window.addEventListener("load", event => { console.log(document.querySelector(".container").clientHeight); console.log(document.querySelector(".container").offsetHeight); });

El código anterior le dará el resultado deseado.

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!