javascript-从弹出窗口重新加载特定框架

我有一个弹出窗口,从那里我想重新加载父窗口,但是要重新加载特定的框架而不是整个页面.

因此,用户单击框架中的按钮,它将打开弹出窗口.现在,基于特定事件,从弹出窗口中,我想从父窗口重新加载框架.

在IE中可能吗?

我有一个页面index.php,其中有2个iframe.

从第二个iframe中打开一个新的弹出窗口.

当用户单击按钮或关闭弹出窗口时,我想重新加载iframe#2(打开窗口的那个).

我怎样才能做到这一点?

我努力了:

 opener.location.reload();
 opener.top.document.getElementById('myIFrameId').location.reload()
 opener.myIFrameId.location.reload();

似乎没有任何作用.

解决方法:

我发现了一个很棒的jQuery插件,可在所有现代浏览器(包括IE8)中使用.

它使您可以轻松地使用参数调用辅助浏览器窗口,然后允许在两者之间传递数据,类似于postMessage API的工作原理.

一旦您分析了传入的jQuery数据,这些数据消息又可以将新内容或备用网页加载到父页面上的原始iframe2中.

文章:jQuery plugin for communication between browser windows

在线演示:Parent Page

下载项目:windowmsg.zip

下载的文件将直接从您的桌面上工作,与jsFiddle不同,因为那里不允许这样做.

当您不需要辅助浏览器窗口并且可以使用浮动iframe时,另一种效果很好的解决方案,只需使用具有iframe功能的灯箱克隆,例如Shadowbox-js.

这种方法的好处是,您可以完全控制iframe的关闭方式,这不同于上面的辅助浏览器窗口具有自己的浏览器关闭按钮,该按钮可能不会触发您想要的事件.

灯箱克隆关闭事件期间的回调可用于根据需要更改父页面iframe 2中的内容.另外,您可以选择将灯箱绑定到iframe 2中(在iframe页面中安装灯箱克隆),或将其全屏显示(在父页面中安装灯箱克隆).

上一篇:Javascript-离开页面时进行确认


下一篇:自定义Javascript警报弹出窗口onclick svg路径