iframe 不能正常显示
在一个aspx页面上有一个Iframe。
该Iframe用以下代码实现自适应高度
<iframe src="test.asp" width="100%" frameborder="0" scrolling="no" name="hj" id="hj"></iframe>
test.asp页面head间增加如下JS代码
<SCRIPT LANGUAGE="JavaScript">
function f_frameStyleResize(targObj){
var targWin = targObj.parent.document.all[targObj.name];
if(targWin != null) {
var HeightValue = targObj.document.body.scrollHeight
if(HeightValue < 600){HeightValue = 600}
targWin.style.pixelHeight = HeightValue;
}
}
function f_iframeResize(){
bLoadComplete = true; f_frameStyleResize(self);
}
var bLoadComplete = false;
window.onload = f_iframeResize;
</SCRIPT>
现在自适应高度能做出来,可是这个Iframe却不能在打开页面时正常显示,往往是刷新七八次后才能在页面上显示出来。
请告诉我如何解决?
谢谢!!!
------解决方案--------------------IFRAME和主页面加载异步问题
最好把方法写在父窗体上,简单点改的话,只要加个延时,不过电脑慢的话也不一定保证一定可以
JScript code
function haha(){
setTimeout("f_iframeResize()",50);
}
window.onload =haha;
------解决方案--------------------
iframe中最后加
<script>
parent.document.all.hj.style.height=document.body.scrollHeight;
<script>