コンテンツ管理システム内にあるダッシュボードがあります。3 つのフレームが最初の列と 3 つの別々の行を占めるように、テーブルに配置された 4 つの iframe があります。4 番目のフレームは 2 列目にあり、3 行すべてにまたがっています。Javascript はウィンドウのサイズを取得し、フレームのサイズを変更します onload() および onresize()。小さなサイズのウィンドウでは、左側の列にある 3 つのフレームはすべて、目に見えるスペースがあるにもかかわらず、高さが 0.5 インチのサイズになっています。
垂直サイジングのスローとは何ですか?どうすれば改善できますか?
JavaScript に焦点を当てて回答してください。
<script type="text/javascript">
var winW = 1024, winH = 768; //This sets a minimum height and width
function calcHeight(ifid) {
getWinH();
document.getElementById(ifid).height = winH;
}
//Cross-browser function to get window height
var compW = 35;
var compH = 290;
function getWinH() {
if (document.body && document.body.offsetWidth) {
winW = document.body.offsetWidth;
winH = document.body.offsetHeight;
}
if (document.compatMode == 'CSS1Compat' && document.documentElement && document.documentElement.offsetWidth) {
winW = document.documentElement.offsetWidth;
winH = document.documentElement.offsetHeight;
}
if (window.innerWidth && window.innerHeight) {
winW = window.innerWidth;
winH = window.innerHeight;
}
winW = winW - compW;
winH = winH - compH;
document.getElementById("box1").setAttribute("width", Math.floor(winW * 0.4));
document.getElementById("box1").setAttribute("height", Math.floor(winH * 0.4));
document.getElementById("box4").setAttribute("width", Math.floor(winW * 0.6));
document.getElementById("box4").setAttribute("height", winH + 175); //comps for the titles of other boxes
document.getElementById("box2").setAttribute("width", Math.floor(winW * 0.4));
document.getElementById("box2").setAttribute("height", Math.floor(winH * 0.4));
document.getElementById("box3").setAttribute("width", Math.floor(winW * 0.4));
document.getElementById("box3").setAttribute("height", Math.floor(winH * 0.4));
}
</script>