Autor Zpráva
AM_
Profil
Zdravím,
potřeboval bych roztáhnout iframe tak, aby se zobrazil celý jeho obsah bez scrollbarů.
Dosáhl jsem jistého úspěchu pomocí document.documentElement.offsetWidth/Height, na výšku se mi to roztahuje správně, ovšem problém je s roztažením na šířku. Dokument se totiž nějak vykreslí prakticky do jakékoliv šířky a údaj offsetWidth je tedy prakticky nepoužitelný. Mám tam jednu relativně širokou tabulku, která ale možná bude měnit velikost, takže šířku nemůžu dát napevno. Napadlo mě, že by šlo nějak zjistit šířku vykreslené tabulky a odpíchnout se od ní (stačilo by šířku přizpůsobit jí), ovšem nevím, jak na to, když tabulka nemá pevně dané rozměry (takže (tabulka).width i (tabulka).style.width jsou prázdné).
SwimX
Profil
AM_
ukázal bys jak jsi docílil zobrazení na výšku? taky jsem s tím bojoval a nakonec se na to vyprd :)
AM_
Profil
V hlavním souboru mám funkci
function autoSizePopup(w, h){
  document.getElementById('pickemp_popup').style.width=(w+10).toString()+'px';
  document.getElementById('pickemp_popup').style.height=(h+10).toString()+'px';
}

a ve vnořeném iframe je
<body onload="parent.autoSizePopup(document.documentElement.offsetWidth, document.documentElement.offsetHeight)">

To celkem nebyl problém, to jsem vymyslel asi za 5 minut, bohužel ale ta šířka neodpovídá efektu, který bych chtěl
AM_
Profil
Tak problém jsem nakonec vyřešil, původní řešení v IE neběhalo ani na výšku.
Vlastnosti offsetWidth a offsetHeight stačilo nahradit scrollWidth a scrollHeight, a hle, chytá se i IE6 (samozřejme IE8, Opera i FF) a jede to krásně na výšku i šířku. (nechce mě to pustit k editaci předchozího příspěvku, prý přístup zamítnut, chtěl jsem to tam opravit v kódu, který je jinak funkční)

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0