Toon posts:

[HTML] Hoogte van een clipped element bepalen

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik probeer een soort van Windows achtige user-interface te maken in HTML + JS, en nou loop ik tegen het volgende probleem aan: als ik een div met overflow:hidden heb dan werkt dit zo goed, dat ik niet kan achterhalen welk deel van de content wel en niet geclipped is. Hier is een voorbeeld.

De relevante code:
HTML:
1
2
3
4
5
6
7
8
9
10
11
12
<div style="overflow: hidden; height: 50px;">
<table cellspacing="0" cellpadding="0">
    <tr>
        <td>
            <div id="theId" onclick="doClient();" style="overflow: scroll;">
               Dit is een <br/>
              <br/> <br/> <br/>  <br/> <br/> 
              div met content</div>
        </td>
    </tr>
</table>
</div>


Welke property ik ook opvraag (offsetHeight, clientHeight etc), ik kan maar niet uitvinden hoeveel pixels er nu echt zichtbaar zijn. Ik kan wellicht wel gaan rekenen, maar ik denk dat dat nog niet zo makkelijk zal zijn in het algemeen (dit is een simpel voorbeeld, in de praktijk zijn de user-interfaces een stuk complexer).

Dit is een voorbeeld van wat ik wil. Hier heb ik dus de hoogte op de div wel gezet. Deze hoogte zou echter gewoon dynamisch berekend en gezet moeten worden.

Iemand enig idee hoe ik (makkelijk) de hoogte van de niet geclipte content op kan halen?

  • crisp
  • Registratie: Februari 2000
  • Nu online

crisp

Devver

Pixelated

ik denk scrollTop, scrollLeft, scrollHeight en scrollWidth

Intentionally left blank


Verwijderd

Topicstarter
crisp schreef op 03 november 2003 @ 21:49:
ik denk scrollTop, scrollLeft, scrollHeight en scrollWidth
Helaas, ook deze geeft de hoogte van de DIV in zijn geheel. Even voor de duidelijkheid: in het voorbeeld heeft de DIV inderdaad een scrollbar, alleen loopt deze door tot buiten de clipping area die met de eerste DIV gemaakt is. M.a.w. de clipping werkt erg goed, maar ik wil zou graag weten welk deel van de 2e div binnen de clipping area van de 1e DIV staat (en dan de height van de 2e div ook op deze hoogte zetten, zodat m'n scrollbalk helemaal te zien is, i.p.v. alleen de bovenkant).