2012-11-16 58 views

回答

1

你可以从父文档与JS的功能只是在父节点定义一个函数,并像这样调用它;

parent.setIFrameHeight(newValue); 

和您的setIFrameHeight函数应该是这样的;

function setIFrameHeight(value) { 
    document.getElementById("iframe").height = value + "px"; 
} 
+0

仅供参考,如果IFRAME具有相同的起源策略符合这只会工作。如果iframe嵌入到与调用方没有相同方案或主机的另一个页面中,则无法使用此技术。 – freshnode

+0

这是相同的域名,但问题与下面提到的问题相同,当您点击iframe中的内容时,如何获得动画效果?有没有一种方法可以在框架中显示的网站中添加iframe高度更改?他们是同一个域的一部分? – loriensleafs

+0

检查示例http://jsfiddle.net/e4K7Q/。如上所述,您必须从iframe文档调用Resize函数。 –

0

您可以使用jQuery库来做到这一点,甚至可以轻松动画事件。

一个简单的jQuery例子例如:

HTML:

<iframe id="iframe-box" src="httml://jsfiddle.com" height="100px" width="50px"></iframe> 

<div id="clickme" > 
    click me 
</div>​ 

的Javascript

$(function(){ 
    $('#clickme').click(function(){ 
     $('#iframe-box').animate({'width':'200'}) 
    }) 
});​ 

example

更新

如果您要访问的iframe里面的内容,你也可以使用jQuery和content()功能做到这一点:

jQueryObject = $("#iframe-box").contents().find("#somecontent") 
+0

所以当你点击iframe中的内容时你如何获得动画效果?有没有一种方法可以在框架中显示的网站中添加iframe高度更改?他们是同一个域的一部分? – loriensleafs

+0

我不完全确定我了解你的问题评论,但让我知道,如果扩大的帖子帮助你。 –

相关问题