Zdravím, dal jsem dohromady skript pro okno, ve kterém se otevírá náhled obrázku a potřebuji, aby se toto okno obrázku přizpůsobilo. Mělo by to fungovat tak, že porovnám velikost obrázku a okna (vytvořené přes window.open o libovolných rozměrech) a o výslednou hodnotu změním velikost okna.
Problém je ale (nejspíš) ve funkci která má vracet šířku okna. Vrací totiž všechno jiné jenom tu šířku ne :'( Výsledek je takový, že na výšku se okno přizpůsobí, ale šířka je vždycky větší a vedle obrázku zůstává pruh s pozadím (btw: body - padding:0px;margin:0px ). Navíc nezáleží na použitém prohlížeči, takže to není jenom problém s IE ... předem díky za pomoc ;-)
Tady je ukázka kódu:
function FitPic() {
iWidth = winW();
iHeight = winH();
iWidth = document.images[0].width - iWidth;
iHeight = document.images[0].height - iHeight;
window.resizeBy(iWidth, iHeight);
self.focus();
};
function winW() {
if (window.innerHeight)
/* NN4 a kompatibilní prohlížeče */
return window.innerHeight;
else if
(document.documentElement &&
document.documentElement.clientHeight)
/* MSIE6 v std. režimu - Opera a Mozilla
již uspěly s window.innerHeight */
return document.documentElement.clientHeight;
else if
(document.body && document.body.clientHeight)
/* starší MSIE + MSIE6 v quirk režimu */
return document.body.clientHeight;
else
return null;
}
function winH() {
if (window.innerHeight)
/* NN4 a kompatibilní prohlížeče */
return window.innerHeight;
else if
(document.documentElement && document.documentElement.clientHeight)
/* MSIE6 v std. režimu - Opera a Mozilla
již uspěly s window.innerHeight */
return document.documentElement.clientHeight;
else if
(document.body && document.body.clientHeight)
/* starší MSIE + MSIE6 v quirk režimu */
return document.body.clientHeight;
else
return null;
}