日期:2014-05-16  浏览次数:20417 次

奇怪的问题,同样的代码js输出的css呈现怎么都不一样呢?
JScript code

function InitDiv()
{
  calendar.Div.style.display = "block";
  //alert();//就在这里
  var dateTable = window.frames("CalendarIframe").document.getElementsByTagName("Table")[0];
  calendar.Div.style.width  = dateTable.offsetWidth;
  calendar.Div.style.height = dateTable.offsetHeight;
  document.title= "w="+dateTable.offsetWidth+" h="+dateTable.offsetHeight
  InitDivLocation();
}


请看title上面显示的数值有何不同。
如果注释掉alert()
显示的结果是

但如果不注释掉alert
显示的结果是

为何会这样呢???

------解决方案--------------------
应该是这里有问题吧:
var dateTable = window.frames("CalendarIframe").document.getElementsByTagName("Table")[0];

alert窗口出来以后,table的位置被移动了,或者参照的offsetParent对象变化了。
你把alert放到他后面,估计就没有这个问题。

你把全部的文件贴出来看看呢。