将 iFrame 附加到加载本地 html 的子 window

Appending an iFrame to a child window that loads local html

我的 javascript 项目遇到问题,我无法获取 iframe 以将本地 html 加载到子 window 中。

我有一个按钮界面设置,点击它会 window.open() 并创建一堆 html DOM 元素。 window 加载 iframe,但不加载 iframe 内容。此外,如果我使用像 www.theuselessweb.com/ 这样的远程地址,iframe 加载得很好,但主 html 目录中没有任何内容。例如 'projectFolder/UnityWebPlayer.html' 是行不通的。我知道这是一个引用问题,因为当我将 iframe 附加到主 html <body> 时,所有远程内容都可以正常工作,但是当附加到 window.open()<body> 时它不起作用].

//编辑

所以强制使用完整协议 file:///K:/ ... /projectFolder/UnityWebPlayer.html 是可行的,但这在网络服务器上如何工作?我怎样才能让相对路径工作?我也试过 ../projectFolder/UnityWebPlayer.html 但这也不管用。

我真的想通了。它与 URL: "about:blank" 有关。 window 似乎是在 null space 中创建的,没有任何指向它的内容。如果您在 window.open() 之后调用 window.document.open(),它将打开一个新的 window,其中 parent.html 作为 URL。现在它知道它的父目录是什么了。从那里我可以调用 window.document.write() 来创建 <html> <body> 标签,附加我的 DOM 元素,并且相对路径在 windows 中创建的单独 windows 中与 iframe 一起工作=21=]。