繁体   English   中英

您如何从 iframe 中的 iframe 获取 src?

[英]How would you get a src from an iframe within an iframe?

我有一些代码,简而言之,正在打开一个 iframe(我们称之为 iframe1)以查看 pdf 文件,并且 pdf 显示在 iframe 本身(我们称之为 iframe2)中,我希望能够获得将打开的 iframe1 中的 iframe2 的源,以便 iframe1 本身只是 pdf iframe2 的 src,而不是 2 个不同的 iframe。 网址非常不同。

做这个的最好方式是什么?

我有一个 open_iframe function 看起来像

function open_iframe(url) {
    return '<iframe id="iframe" src="' + url + '" width=100% height=100% frameborder="0" allowfullscreen></iframe>';
}

我正在写另一个 function 那是

function find_file_url(url) {
    let iframe = this.open_iframe(url);
    return iframe.contentWindow.document.getElementsByTagName('iframe')[0].src;
}

我也可以使用 Jquery。

这是可能的吗?

有更好的方法吗?

提前致谢!

您是否已将 iframe object 附加到您的 dom? 在此“iframe”的 html 标签中,而不是创建 html 字符串,您可以直接创建 dom iframe object 并为它们分配属性,然后进一步解析它。 正如 Barmar 所说,在那之前它只会被视为一个 html 字符串。 .document.getElementsByTagName('iframe')将是一个 null 元素,因为它没有附加到文档 object。

您可以尝试document.domain = "site.com" ,我正在处理类似的问题。 这将确保它们在同一个域中

您也可以使用iframe.contentWindowiframe.contentDocument脚本在嵌套框架内部进行通信。

还将onloaderrorOnload分配给控制台跟踪的属性

iFrame 加载 JavaScript 事件

https://javascript.info/cross-window-communication

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM