Javascript 更改父窗口iframe的src
假设我的网站是 我已经在其中加载了iframe,其中包含src 当我的Iframe被加载时,在该Iframe中我有一个重定向到的按钮。所以示例3不允许在Iframe内部打开,所以我的代码失败了 为了解决这个问题,我决定在另一个窗口中打开,然后做一些事情,关闭那个窗口。接下来,我将返回(iframe已加载的网站),并希望向我的iframe的src添加一个参数,以便我可以确定我已完成的任务,并希望更改和重新加载iframe的src 请帮助我如何解决这个问题。如果可能的话,请建议其他更好的方法Javascript 更改父窗口iframe的src,javascript,iframe,postmessage,Javascript,Iframe,Postmessage,假设我的网站是 我已经在其中加载了iframe,其中包含src 当我的Iframe被加载时,在该Iframe中我有一个重定向到的按钮。所以示例3不允许在Iframe内部打开,所以我的代码失败了 为了解决这个问题,我决定在另一个窗口中打开,然后做一些事情,关闭那个窗口。接下来,我将返回(iframe已加载的网站),并希望向我的iframe的src添加一个参数,以便我可以确定我已完成的任务,并希望更改和重新加载iframe的src 请帮助我如何解决这个问题。如果可能的话,请建议其他更好的方法 请随时
请随时添加评论,以防我可以帮助您更好地理解我的问题 因为听起来好像你不能在新窗口中控制站点上的代码,所以你唯一能做的实际事情就是设置一个间隔,检查你用
window.open()
打开的新窗口是否从你打开的页面关闭
然后,在确定它已关闭后,为用户添加某种提示
var otherWindow = window.open('example3.com');
var timer = setInterval(function(){
if(otherWindow.closed){
clearInterval(timer);
if(confirm('Did you complete that step?')){
// adjust iframe url
}
}
},1000);// check every second if it is closed
现在实际的问题是什么?获取对iframe的引用?更改iframe的src?还有什么?我建议你再读一遍,然后相应地编辑这个问题,因为在目前的状态下,它很可能会因为脱离主题而被关闭。在关闭它的窗口之前,没有办法知道你是否真的在网站上做了你无法控制的事情。我不会关闭example3.com窗口。但是我可以使用example3.com窗口中的postMessage,并且可以在example.com窗口中接收,然后我将更改当前的iframe url@CharlietFlb但您不控制示例3上的代码,是吗?如果您这样做了,为什么不能将其设置为在iframe中加载呢?因此,在我的例子中,在成功完成一些任务后,在otherWindow中加载。它将重定向到带有一些标志的iframe src,这样我可以每秒检查otherWindow.location.href=,然后将postMessage发送到父窗口并关闭该otherWindow。当我的parentWindow收到该postMessage时,请更改Iframe src。是否正确?我不能100%确定您是否可以获得otherWindow href。不过这个主意听起来不错。可能还能够使用example2页面中的存储事件。你的工作流程对我来说还是有点混乱