Dynamiczna zmiana wysokosci IFRAME - rozwiazanie problemu: Różnice pomiędzy wersjami

Z Podręcznik Administratora by OPZ SGU
Przejdź do nawigacji Przejdź do wyszukiwania
Linia 9: Linia 9:
oto przykład zastosowania :
oto przykład zastosowania :


<script language="JavaScript">
<pre><script language="JavaScript">
function DynamicznyIframe() {
function DynamicznyIframe() {


Linia 22: Linia 22:
<iframe onLoad="DynamicznyIframe();" src="link do dokumentu" width="100%" height="100%"
<iframe onLoad="DynamicznyIframe();" src="link do dokumentu" width="100%" height="100%"
scrolling="no" frameborder="0" scroll="auto" id="ramka" marginwidth="0"
scrolling="no" frameborder="0" scroll="auto" id="ramka" marginwidth="0"
marginheight="0" ></iframe>
marginheight="0" ></iframe></pre>

Wersja z 23:19, 23 sie 2010

Nie raz nie dwa korzystamy z IFRAME aby wyswietlić na stronie zewnetrzny dokument i natrafiamy na problem. Okazuje się że wszystko jest super do momentu gdy strona pobierana do ramki jest o stałej wysokości, bo ustalamy sobie na sztywno wartość HEIGHT dla IFRAME i problem przewijania strony w pionie znika.

Co jednak gdy pobierany dokument ma różna wysokość w zalezności od akcji na nim wykonanej? Niestety ale jedynym rozwiazaniem jest zastosowanie JavaScript do generowania dynamicznie skalowanej w pionie ramki.

oto przykład zastosowania :

<script language="JavaScript">
function DynamicznyIframe() {

var rozmiar=
document.getElementById(\'ramka\').contentWindow.
document.body.scrollHeight;

document.getElementById(\'ramka\').height=
rozmiar;  
}
</script>
<iframe onLoad="DynamicznyIframe();" src="link do dokumentu" width="100%" height="100%"
scrolling="no" frameborder="0" scroll="auto" id="ramka" marginwidth="0"
marginheight="0" ></iframe>