webForumDet fria alternativet

Auto-height?

7 svar · 319 visningar · startad av learn

learnMedlem sedan jan. 20051 130 inlägg
#1

Jag vill ha en funktion som spottar upp ett popup-window där höjden, height:en, ska anpassa sig till innehållet. dvs är det bara 1 rad så blir det ett litet popup, men om det är 50 rader så blir det större...

Kanske man kan modda detta lite:

// Popupfönster

function center(width,height,cx,cy){
	var x=(cx==0)?0:(cx==1)?parseInt((screen.width-width-10)/2):screen.width-width-10;
	var y=(cy==0)?0:(cy==1)?parseInt((screen.height-height-56)/2):screen.height-height-56;
	return (",top="+y+",left="+x);
}
function openwindow(url){ window.open(url,"myWin","toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,width=100,height=100"+center(200,450,1,1)+""); }

Bredden, width:en, skall vara bestämd.
Tack på förhand!

GuffaMedlem sedan juni 2004533 inlägg
#2

Storleken på innehållet vet du ju inte förrän sidan i popupfönstret har laddats. Lägg ett javascript i onload i body-taggen på den sidan, som tar reda på storleken på innehållet och sätter fönstrets storlek efter det.

learnMedlem sedan jan. 20051 130 inlägg
#3

låter smart, men hur gör jag det? :r

learnMedlem sedan jan. 20051 130 inlägg
#4

Någon JS-expert som kan hjälpa mig...? :)

learnMedlem sedan jan. 20051 130 inlägg
#5

Vad jag behöver hjälp med är alltså ett JS som tar reda på innehållets storlek och sätter popup-fönsters storlek efter dessa mått. Se första inlägget.
:birp Vore asschysst ifall ngn kan hjälpa mig! :birp

learnMedlem sedan jan. 20051 130 inlägg
#6

kikat runt lite... borde inte detta funka?

<script type="text/javascript">
h=(document.all)?document.body.clientHeight:window.innerHeight;
</script>

<body onLoad="window.resizeTo(400, h);">
learnMedlem sedan jan. 20051 130 inlägg
#7

Snälla, förlåt om jag är tjatig men jag måste fixa detta!

learnMedlem sedan jan. 20051 130 inlägg
#8

Lyckades nu till slut fixa det på egen hand, men jag måste verkligen säga att jag är besviken på er wF:are som inte svarat på min tråd... ;)

Iaf, här är koden som fixade biffen:

<script type="text/javascript">
window.onload = function(){
    var t = document.getElementById("table");
    window.resizeTo(330, t.offsetHeight + 60);
}
</script>

Sen så satte jag ett "tabell-hölje" runt sidans innehåll med id="table". "offsetHeight" lägger till lite extra luft (i detta fall 60st pixlar)

135 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
130 ms — hämta tråd, inlägg och bilagor (db)