Toon posts:

[javascript]height van div met dynamische inhoud

Pagina: 1
Acties:
  • 425 views sinds 30-01-2008
  • Reageer

Verwijderd

Topicstarter
Goedenavond ;)

Ik wil een pop-up automatisch schalen naar de hoogte van een element, bv een foto
Dat gaat prima met de volgende regel

window.innerHeight=document.images["foto"].height;

Leuk, maar nu wil ik een foto met een tekst eronder. Ik dacht toen het volgende:

code:
1
2
<div id="content">foto<br />tekst</div>
window.innerHeight=document.getElementById('content').height;

Maar de window.innerHeight wordt nu veel minder hoog dan foto en tekst bij elkaar :?
Hoe kan ik met javascript de hoogte van een divje met dynamische inhoud bepalen?

disclaimer, dit is uiteraard niet de daadwerkelijke volgorde van de code, maar de twee relevante regels

  • Vinnienerd
  • Registratie: Juli 2000
  • Laatst online: 06-05 17:59
Kun je bij de window.innerHeight niet een bepaald aantal pixels optellen? Misschien neemt ie steeds gewoon x pixels te weinig mee door de <br />?

Verwijderd

Topicstarter
Vinnienerd schreef op vrijdag 03 juni 2005 @ 21:34:
Kun je bij de window.innerHeight niet een bepaald aantal pixels optellen? Misschien neemt ie steeds gewoon x pixels te weinig mee door de <br />?
Nee, hij komt zelfs maar halverwege de hoogte van de foto.

Het lijkt wel of een div waarbij dus geen height is ingesteld via CSS (behalve dus de default 'auto') geen waarde terug geeft in getElementById.

  • Amras
  • Registratie: Januari 2003
  • Laatst online: 01-10-2025
Je moet de height van de div zo opvragen:
code:
1
document.getElementById('content').style.height;

In jouw geval gaat dit echter niet werken om deze property alleen iets teruggeeft als je hem een waarde hebt gegeven.

Verwijderd

Topicstarter
Amras schreef op vrijdag 03 juni 2005 @ 21:42:
Je moet de height van de div zo opvragen:
code:
1
document.getElementById('content').style.height;

In jouw geval gaat dit echter niet werken om deze property alleen iets teruggeeft als je hem een waarde hebt gegeven.
style.height had ik ook geprobeerd, maar werkt inderdaad ook niet.

Het is dus simpelweg niet mogelijk om in javascript de hoogte van een div met dynamische inhoud te bepalen/achterhalen?

[ Voor 5% gewijzigd door Verwijderd op 03-06-2005 21:49 ]


  • Not Pingu
  • Registratie: November 2001
  • Laatst online: 01-04 20:36

Not Pingu

Dumbass ex machina

Met de .style property haal je sowieso alleen dingen op die in CSS geset zijn, geloof ik.

Voor de daadwerkelijke weergave heb je Computedstyle:
code:
1
document.defaultView.getComputedStyle(someObject,'').getPropertyValue('width')

Certified smart block developer op de agile darkchain stack. PM voor info.


Verwijderd

Topicstarter
Gunp01nt schreef op vrijdag 03 juni 2005 @ 22:03:
Met de .style property haal je sowieso alleen dingen op die in CSS geset zijn, geloof ik.

Voor de daadwerkelijke weergave heb je Computedstyle:
code:
1
document.defaultView.getComputedStyle(someObject,'').getPropertyValue('width')
Is dit crossbrowser?

want dit werkt prima onder FF
code:
1
window.innerHeight=document.getElementById('object').clientHeight;


Maar niet onder IE

  • Not Pingu
  • Registratie: November 2001
  • Laatst online: 01-04 20:36

Not Pingu

Dumbass ex machina

Als het goed is, is er redelijk brede ondersteuning voor. Ik heb het zelf nooit gebruikt, en ik las ook al dat bijv. Opera een paar dingen fout doet als je computedstyle gebruikt. Maar ik zou zeggen, probeer het gewoon.

Certified smart block developer op de agile darkchain stack. PM voor info.

Pagina: 1