Javascript iframe中的getElementById

Javascript iframe中的getElementById,javascript,iframe,getelementbyid,Javascript,Iframe,Getelementbyid,问:我有一个iframe调用第X页,在第X页上是一个div w/id=test。此测试div的值为“气泡”。在父页面上,我需要读取div的值并将其存储为javascript变量 结果:在父页面上有一个document.write(iframedivvalue)输出,它将=iframe中div的值 注: 到目前为止,第X页位于 不同的领域 我不想设置任何设置 在iframe中,只需读一个div 价值观 假设iFrame具有分配的ID: var iframe_div = document.getE

问:我有一个iframe调用第X页,在第X页上是一个div w/
id=test
。此测试div的值为“气泡”。在父页面上,我需要读取div的值并将其存储为javascript变量

结果:在父页面上有一个
document.write(iframedivvalue)输出,它将=iframe中div的值

注:

  • 到目前为止,第X页位于 不同的领域
  • 我不想设置任何设置 在iframe中,只需读一个div 价值观

假设iFrame具有分配的ID:

var iframe_div = document.getElementById('iframeid').document.getElementById('mydiv');
var content = iframe_div.innerHTML;

我认为应该有效。

如果域不匹配,您仍将被同一来源策略阻止。如果您只是试图获取一个值,这并不重要。

正如Alex在上面的评论中所说,您仍然会被JavaScript“同源”策略阻止

如果您的iframe位于同一个域上,则可以尝试以下操作:

document.getElementById('iframe-id').contentDocument.getElementById('canvas');

如果域不匹配,您仍将被同源策略阻止。无论您是否只是尝试获取一个值。window.frames[0].document.getElementById(“测试”);也可以(假设目前只有一个iframe.as,第X页位于不同的域中。解决方案不会work@TheScrumMeister:我不知道这有什么关联(我相信我见过一些网站使用iFrame/Frame来自动化其他方面,在顶部和下面的原始网站使用横幅).但如果你说的是准确的,我所能做的任何事情都不会改变这一点。但这是访问你有权访问的iFrame内容的正确方法。