如何更改iframe内容?

时间:2011-04-12 16:14:41

标签: javascript iframe

  

可能重复:
  How to change style of iframe content cross-domain?

大家好。

如果来自其他网站,是否可以更改iframe内容? e.g。

<html>
<head></head>
 <body>
  <iframe src="http://www.google.com"></iframe>
 </body>
</html>

感谢。

5 个答案:

答案 0 :(得分:3)

简单回答......不。 如果您指的是在iframe中加载文档的dom操作。

如需更长的答案,请参阅http://en.wikipedia.org/wiki/Cross-site_scripting

答案 1 :(得分:2)

目前无法编辑来自其他域的iframe 的内容,否则会产生巨大的安全风险。

这称为跨站点脚本,始终是禁忌。

答案 2 :(得分:1)

不是你想要听到的但是......不......如果你无法控制域并且可以访问文件,你甚至无法使用JavaScript来改变iFrame的内容你的例子Google.com。

答案 3 :(得分:1)

没有

但如果你通过自己的域管道内容,你可以解决这个问题。

因此,如果您在mydomain / fakegoogle上有一个脚本,它可以执行

的操作
echo file_get_contents("google.com").

然后在您的iframe上,将来源指向mydomain / fakegoogle。不是最有效的,但如果你需要的只是来自该跨域请求的内容,它就有效。

答案 4 :(得分:0)

不,但如果两个页面同意这样做,您可以进行通信,例如使用window.postMessage。这是一项保护您的安全功能。这是一个jquery plugin window.postMessage包装器的链接,带有location.hash后备支持。