2013-03-12 70 views
2

当iframe包含指定的div id时,是否可以只刷新一次iframe父页?使用getElementById刷新iframe父页

我想这个父页面上,但没有奏效:

if document.frames('myiframe').(document.getElementById("iframedivID") !== null) { window.location.href = "mysite.com"; } 

回答

2

它需要时间来加载内的文件。所以我们必须等到内部文档被加载,一旦加载,内部div可以被访问。这是我的示例HTML和JavaScript代码。由于这个原因,您第一次可以在警报中获得null。希望这可以帮助。

的test.html

<iframe id="iframedivID" src="Test1.html"></iframe> 

Test1.html

<div id='myDiv'>My name is ravindra</div> 
<script type="text/javascript"> 
    if (window.parent.window.location.href.toString().indexOf("?refresh") == -1){ 
     window.parent.window.location.href="Test.html?refresh"; 
    } 
</script> 
+0

不起作用。我试着用相同的结果,即使在同一页上也不能工作if($('expectedID')[0]){window.top.location =“http://www.site.com”} – marius 2013-03-12 14:56:06

+0

空警报继续来一遍又一遍地。 – marius 2013-03-12 16:25:27

+0

看起来好像test.html在iframe中找不到'myDiv',并且因为这个原因不会触发任何东西,也许是因为父页面首先加载并且iframe在1-2秒之后加载? – marius 2013-03-12 18:29:37