/ Forside / Teknologi / Udvikling / Java Scripts / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java Scripts
#NavnPoint
molokyle 5410
Klaudi 2799
smorch 2439
kim 1360
Harlekin 1134
bentjuul 984
gibson 800
severino 695
Random 675
10  konsulent.. 626
Ændre størrelse på iframe med javascript
Fra : Jesper Nielsen


Dato : 04-02-04 20:04

Hej!

Jeg opbygger min side med iframes transparant, forstået på den måde, at
iframe'sne resizes alt efter hvor meget tekst der er i iframen, for at undgå
scrollbars midt på siden.

Dette gør jeg på følgende måde:

<body onload="top.document.getElementById('f_menu').style.height =
document.getElementById('menucontent').offsetHeight;
alert(document.getElementById('menucontent').offsetHeight);">

Dette virker også fint nok på een hjemmeside[1], men ikke på et projekt, som
jeg arbejder på nu - Mozilla vil ikke resize iframen.

Årsagen til brug af iframes er, at det sparer min server for MANGE
databaseforespørgsler.

Er der nogen, som kan give en forklaring?

[1] http://www.gayweb.dk - lige under kategorioversigten.
Det eneste problem med fremgangsmåden i Mozilla er, at den åbenbart ikke kan
finde ud af at gøre iframen mindre igen - prøv at klikke på Homotropolis, og
derefter på et af de andre nyhedskanaler. Er der evt. nogen, som også har en
løsning på dette?

--
Mvh. Jesper



 
 
Jesper Nielsen (04-02-2004)
Kommentar
Fra : Jesper Nielsen


Dato : 04-02-04 20:22

Det nye kan forresten ses på http://www.dev.gayweb.dk/template.aspx, og det
virker i IE men ikke i Mozilla. http://www.gayweb.dk virker i begge
browsere, og den eneste reelle ændring er variabelnavne (plus javascripten
er lagt i body onload istedet for i slutningen af siden, som hentes.)

--
Mvh. Jesper



Jens Gyldenkærne Cla~ (04-02-2004)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 04-02-04 22:31

Jesper Nielsen skrev:

> <body
> onload="top.document.getElementById('f_menu').style.height =

Læg mærke til Id i slutningen af getElementById.


> Dette virker også fint nok på een hjemmeside[1], men ikke på
> et projekt, som jeg arbejder på nu - Mozilla vil ikke resize
> iframen.

Du har kun name - ikke id - på dine iframes på
<http://www.dev.gayweb.dk/template.aspx>


> Det eneste problem med fremgangsmåden i Mozilla er, at den
> åbenbart ikke kan finde ud af at gøre iframen mindre igen -

Iframen bliver mindre, men den omgivende tabelcelle beholder den
udvidede størrelse. Jeg ved ikke om du kan få tabelcellen til at
indskrænke sig igen, men du kan prøve at sætte style direkte på
den. En anden mulighed er helt at droppe tabeller til layout.
Martin Hintzmann plejer at sende følgende postkort til folk der
layouter med tabeller:
<http://www.lazycat.org/postcards/tables.html>

NB: Har du en aftale med DR og TV2 om at bringe deres nyheder på
dit site?
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Jesper Nielsen (04-02-2004)
Kommentar
Fra : Jesper Nielsen


Dato : 04-02-04 22:45

> > <body
> > onload="top.document.getElementById('f_menu').style.height =
>
> Læg mærke til Id i slutningen af getElementById.

Hvad med det?


> > Dette virker også fint nok på een hjemmeside[1], men ikke på
> > et projekt, som jeg arbejder på nu - Mozilla vil ikke resize
> > iframen.
>
> Du har kun name - ikke id - på dine iframes på
> <http://www.dev.gayweb.dk/template.aspx>

Ja, sørme - det var det der var galt. Nu virker det.


> > Det eneste problem med fremgangsmåden i Mozilla er, at den
> > åbenbart ikke kan finde ud af at gøre iframen mindre igen -
>
> Iframen bliver mindre, men den omgivende tabelcelle beholder den
> udvidede størrelse. Jeg ved ikke om du kan få tabelcellen til at
> indskrænke sig igen, men du kan prøve at sætte style direkte på
> den. En anden mulighed er helt at droppe tabeller til layout.
> Martin Hintzmann plejer at sende følgende postkort til folk der
> layouter med tabeller:
> <http://www.lazycat.org/postcards/tables.html>

Den ser ud til at indskrænke tabelcellen også nu - uden at ændre størrelsen
direkte.


> NB: Har du en aftale med DR og TV2 om at bringe deres nyheder på
> dit site?

Ikke med DR eller TV2 specifikt, men med dem som leverer mit nyhedsfeed.

Mange tak for hjælpen!

--
Mvh. Jesper



Jesper Nielsen (04-02-2004)
Kommentar
Fra : Jesper Nielsen


Dato : 04-02-04 22:47

> Den ser ud til at indskrænke tabelcellen også nu - uden at ændre
størrelsen
> direkte.

Glemte lige at kommentere det med postkortet...
Ja, jeg ved godt, at CSS er bedre. Jeg er bare ikke kommet så langt i det
endnu - jeg er ikke designer/layouter, men programmør, og lader normalt
andre om HTML, med mindre der er tale om private og non-profit projekter som
dette.

--
Mvh. Jesper



Martin Hintzmann And~ (05-02-2004)
Kommentar
Fra : Martin Hintzmann And~


Dato : 05-02-04 08:25

Jesper Nielsen wrote:
>
> Glemte lige at kommentere det med postkortet...
> Ja, jeg ved godt, at CSS er bedre. Jeg er bare ikke kommet så langt i det
> endnu - jeg er ikke designer/layouter, men programmør, og lader normalt
> andre om HTML, med mindre der er tale om private og non-profit projekter som
> dette.
>

Og netop fordi du er programmør bør du lave det så simpelt som muligt og
udgå (i)frames

Hintzmann c",)

Jesper Nielsen (06-02-2004)
Kommentar
Fra : Jesper Nielsen


Dato : 06-02-04 16:53

> Og netop fordi du er programmør bør du lave det så simpelt som muligt og
> udgå (i)frames

Heh, iframes skal benyttes for at spare på databaseserverens kræfter uden
overdreven brug af caching (hvadenten det er client eller server,) så der er
skam logik i galskaben

--
Mvh. Jesper



Martin Hintzmann And~ (09-02-2004)
Kommentar
Fra : Martin Hintzmann And~


Dato : 09-02-04 14:19

Jesper Nielsen wrote:

>>Og netop fordi du er programmør bør du lave det så simpelt som muligt og
>>udgå (i)frames
>
>
> Heh, iframes skal benyttes for at spare på databaseserverens kræfter uden
> overdreven brug af caching (hvadenten det er client eller server,) så der er
> skam logik i galskaben
>


Øh... det ser jeg ikke nogen logik i

Er der er performance problem, så løses det ikke ved rykke det ud på
clientsiden.

Et request efter et HTML-dokumentet vil alt andet lige altid være
hurtigere end 2 request efter to HTML-dokumenter (et i iframen).

Hvis der er et performance problem, skal det findes og optimeres på
serversiden.

Overdreven brug af caching ? Hvor meget snakker vi her om at der skal
caches ?

Hintzmann c",)

Søg
Reklame
Statistik
Spørgsmål : 177552
Tips : 31968
Nyheder : 719565
Indlæg : 6408847
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste