2013-03-21 79 views
4

我有了内的iframe页面。在iframe中,人们可以单独导航(提交表单,我的帐户等)。在此过程中,每个新的iframe页面上的iframe大小都会更改。问题是我设置了一个iframe ID来自动调整大小。一个另一个问题是,经过一些I帧的负载,例如登记表,它有一些选项来上传照片,例如,选项,点击时它扩展了iframe的长度,所以一般的汽车大小将无法正常工作-anyway我的脚本可以处理这个 - 。我可以在iframe的所有页面中插入iframe的脚本,但父页面如何识别每个iframe以自动调整大小?在父页面(通过自动调整大小ID单一的iframe页面)自动调整大小的iframe无论什么页面加载

代码:

<script> 
function alertsize(pixels){ 
pixels+=0; 
document.getElementById('myiframe').style.height=pixels+"px"; 
} 
</script> 

上面的脚本可以以适用于任何iframe中的iframe页面加载上修改?

iframe脚本:

<script type="text/javascript"> 
var myHeight = 0; 

setInterval(function(){ 
if(myHeight != document.body.scrollHeight){ 
    myHeight = document.body.scrollHeight; 
    parent.alertsize(myHeight); 
} 
},500); 
</script> 

的Iframe:

<iframe id="myiframe" src="../../data/my-account" name="myiframe" width="100%" height="100%" scrolling="no" frameborder="0"></iframe> 

回答

0

您可以使用top指父框架,它会引用顶层窗口对象。

top.alertsize(myHeight)

+-----------------------+ 
| top     | 
|      | 
| +------------------+ | 
| | iframe   | | 
| +------------------+ | 
|      | 
| +------------------+ | 
| | iframe   | | 
| +------------------+ | 
+-----------------------+