用javascript 自动调节iframe高度出现问题

王朝java/jsp·作者佚名  2006-03-24
窄屏简体版  字體: |||超大  

我一个页面需要嵌入10个iframe,希望每个显示的数据不超过10条,超过就出现滚动条。没有数据则只显示表头。最开始用jsp去统计每个iframe需要显示数据的总数,然后计算,超过10条。ifram的高度就制定为一固定制,反之,取数据条数乘上每条的高度。这样做可以实现功能,但是速度比较慢。

于是就想用javascript去自动调节ifram的高度,函数如下:

var getFFVersion=navigator.userAgent.substring(navigator.userAgent.indexOf("Firefox")).split("/")[1]

//extra height in px to add to iframe in FireFox 1.0+ browsers

var FFextraHeight=getFFVersion>=0.1? 16 : 0

function isiFrameLoadComplete(iframename){

var pTar = document.getElementById(iframename);

if(pTar.readyState=="complete"){

return true;

}else{

return false;

}

}

function dsed_resize(iframename) {

var pTar = null;

if (document.getElementById){

pTar = document.getElementById(iframename);

}

else{

eval('pTar = '+iframename+';');

}

pTar.height = 25;

if (pTar && !window.opera){

pTar.style.display="block"

if (pTar.contentDocument && pTar.contentDocument.body.offsetHeight){

//ns6 syntax

pTar.height = pTar.contentDocument.body.offsetHeight+FFextraHeight;

if(pTar.height<=25){

pTar.height = 25;

}else if(pTar.height>=210){

pTar.height = 210;

}

}

else if (pTar.Document && pTar.Document.body.scrollHeight){

//ie5+ syntax

pTar.height = pTar.Document.body.scrollHeight;

if(pTar.height<=25){

pTar.height = 25;

}else if(pTar.height>=210){

pTar.height = 210;

}

}

}

}

但是现在又遇到一个问题,第一次打开页面的时候,可能有一个iframe不能正常显示,刷新一下又可以了。我以为iframe的个数太多了,所以导致这样,然后特地为每个iframe写个javascript函数,结果还是一样。真是没招了!

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航