首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何从不同的窗口调用javascript?

如何从不同的窗口调用javascript?
EN

Stack Overflow用户
提问于 2012-12-12 07:54:04
回答 2查看 164关注 0票数 1

我正在和IE9一起工作。

不会有跨域的问题,因为我要从页面的相同域加载到弹出窗口中的页面。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-12-12 08:00:40

就像科里说的,使用window.opener来获取父窗口的window。看看这个:

http://jsfiddle.net/Dmnqk/

代码语言:javascript
运行
复制
function openPopup() {
    var w = window.open("", "");
    w.document.open();
    w.document.write("<script type='text/javascript'>window.opener.parentWindowFunction();<\/script>");
    w.document.close();
}

function parentWindowFunction() {
    alert("called");
}

当然,我使用document.open/write/close只是为了创建我自己的页面,该页面调用父窗口的函数(从技术上讲,它实际上应该有<html><head></head><body>SCRIPT HERE</body></html>。你弹出的页面只需要调用window.opener.parentWindowFunction即可。

票数 3
EN

Stack Overflow用户

发布于 2012-12-12 08:03:09

您可以使用window.opener访问打开弹出窗口的页面的全局(window)名称空间中的函数:

开场白

代码语言:javascript
运行
复制
function functionFromOpener() {
    return "wharrgarbl";
}

弹出窗口

代码语言:javascript
运行
复制
alert(window.opener.functionFromOpener());

强制jsFiddle示例:http://jsfiddle.net/9yLu2/1/

也就是说,我认为使用页面中的DHTML对话框是一个更好的主意。(或者可能是浏览器窗口不能调整大小/没有地址栏,这让我很恼火。)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13830518

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档