【发布时间】:2015-01-12 21:20:22
【问题描述】:
我有一个应用程序,我需要在其中发布到 iframe 并获取内容。我有一个load 处理程序,它从框架中获取innerHTML,但以下会引发错误:
var frameDoc = frame.contentDocument || frame.contentWindow.document;
我知道这可以防止 XSS 攻击,但我的印象是只有在域不同时才会发生这种情况。我已经检查并仔细检查了; iframe 的域与页面的域匹配,但我仍然无法获取框架内容。
什么情况下同域iframe访问还会导致这个错误?
【问题讨论】:
-
尝试在 Chrome 中调试。就我而言,错误消息足够明确,足以让我在父框架中明确设置
document.domain,即使父框架的默认document.domain值应该已经正确,这也是必要的! -
是的,我的两个文档也在同一个域中
-
@BrettZamir 如果这是真的,那应该是一个答案
标签: javascript iframe