Javascript从iframe内部更改iFrame的内容

时间:2018-07-16 23:39:31

标签: javascript dom iframe

如何从iframe的内部更改iframe的innerHTML?

<iframe>
foo

<script>
.... will change "foo" to "bar" .....
</script>

</iframe>

1 个答案:

答案 0 :(得分:1)

那不是iframe的工作方式。

iframe标记的innerHTML是后备内容,仅在浏览器不支持iframe时显示。当前所有的浏览器(包括屏幕阅读器)都支持它们。除非您的网站需要支持真正的古老浏览器(我们所谈论的是1990年代中期的IE5及更低版本),否则通常可以将其省略,因为不会向任何人显示。

相反,请使用iframe标记上的src属性指向单独的网页,该网页将与父窗口分开工作。

<iframe src="this_page_will_be_shown_in_the_frame.html">
  This is fallback content that will not be shown in any current browsers
</iframe>

该框架页面可以拥有自己的javascript和CSS,它们可以独立于父窗口修改其内容-因此,您可以从框架内修改框架页面,如果没有的话,可以像修改它一样。 t完全在框架内。

如果父级文档和框架文档位于相同的域名上,则可以使javascript相互影响-通过使用框架中的window.parent或iframe节点上的.contentWindow父级-但是默认情况下,每个文档的CSS和javascript都可以单独工作,并且不会互相影响。