Ik heb een JavaScript pop-up venster waar een klein formulier in staat. Omdat dit venster als een soort dialog fungeert, leek het mij aardig om hem zo'n formaat te geven dat de invoerelementen er precies in passen. Dat is echter niet zo eenvoudig te doen omdat verschillende browsers form-elementen andere groottes geven (vooral die textarea is lastig) en bovendien de inhoud van het venster variabel is. De grootte van het venster bij het openen hardcoden is dus geen oplossing.
Nu had ik gedacht dit met JavaScript op te lossen (het venster wordt tenslotte toch al geopend met JavaScript) en wel door het formulier in een div-element te plaatsen en de grootte van het venster aan te passen op de grootte van dit div-element, via een onLoad-callback. Helaas werkt dit niet omdat ik de attributes van het div-element niet kan uitlezen zonder ze zelf eerst te initialiseren, terwijl ik nu juist de waarden wil gebruiken die de browser eraan gegeven heeft!
Hieronder staat een voorbeeldje, met een te groot (vooral te hoog) venster met daarin het div-element (voor het gemak met rode achtergrondkleur) .
Nu het doel en het probleem duidelijk zijn, komt mijn vraag: is het mogelijk om op de een of andere manier de grootte van een div-element (het rode gebied in de screenshot) op te vragen of is er een andere manier om de grootte van het venster te wijzigen zodat de inhoud er een beetje netjes in past?
Nu had ik gedacht dit met JavaScript op te lossen (het venster wordt tenslotte toch al geopend met JavaScript) en wel door het formulier in een div-element te plaatsen en de grootte van het venster aan te passen op de grootte van dit div-element, via een onLoad-callback. Helaas werkt dit niet omdat ik de attributes van het div-element niet kan uitlezen zonder ze zelf eerst te initialiseren, terwijl ik nu juist de waarden wil gebruiken die de browser eraan gegeven heeft!
Hieronder staat een voorbeeldje, met een te groot (vooral te hoog) venster met daarin het div-element (voor het gemak met rode achtergrondkleur) .
Nu het doel en het probleem duidelijk zijn, komt mijn vraag: is het mogelijk om op de een of andere manier de grootte van een div-element (het rode gebied in de screenshot) op te vragen of is er een andere manier om de grootte van het venster te wijzigen zodat de inhoud er een beetje netjes in past?

