如何从iframe中调用主窗口中的函数
How to call function in main window from iframe?
首先,我知道这个问题与其他问题重复。但我试图做以下许多例子从许多问题在stackoverflow,但它没有工作。我不能从框架中调用主窗口的函数,但如果我使用框架标签,它的工作。
我试过了。
主窗口:
<body>
<iframe src='test.html'></iframe>
<script>
var alertFunc = function(){
window.alert("work!");
}
</script>
</body>
test.html
<body>
<input type="button" onclick="window.parent.alertFunc();" value="Test" />
</body>
控制台的错误消息。
Unsafe JavaScript attempt to access frame with URL file:///C:/.../index.html from frame with URL file:///C:/.../test.html. Domains, protocols and ports must match.
test.html:30
Uncaught TypeError: Cannot call method 'alertFunc' of undefined
还有很多类似的形式
你有什么想法吗?还是我做错了什么?
看起来您正在直接从文件系统访问文件,如c:.....'page.html.
由于同源策略导致的错误,如果您将站点部署在tomcat或任何其他web服务器中,而不是从本地文件系统访问它,它应该工作,假设两个文件来自相同的域空间。
如果主页面(iframe)和iframe页面在同一个目录下,或者iframe页面是主页面目录的子目录,它将在FireFox中工作
以上将不工作在chrome,你需要启动chrome与标志--allow-file-access-from-files
相关文章:
- 创建一个类似链接的按钮,并通过Javascript函数打开一个新的弹出窗口
- 基于窗口宽度jquery的函数的替代方法是什么
- 允许父窗口在其不同域的子iframe上调用函数
- 全局窗口热键在最小化chrome窗口时调用js函数
- jQuery调整大小函数只适用于窗口
- JavaScript 中的窗口函数说明
- 如何重命名本机窗口函数,以便我可以删除两行
- Javascript 窗口函数将“this”作为参数传递
- 调用父窗口中的子窗口函数时出错
- 窗口对象、窗口函数和对象函数
- php&javascript打开窗口函数
- 如何使用窗口[函数名称]引用非全局函数
- 窗口函数中的一个变量.未正确设置Onload
- 窗口函数指针在JavaScript中不工作
- 如何从子窗口调用父窗口函数
- V8 / JS运行时:如何使用没有前缀"window"的JavaScript窗口函数
- 获取窗口函数在本地分配变量
- 调用子窗口javascript中的父窗口函数
- 使用javascript窗口函数的动态SVG背景
- 如何在 javascript 中的子窗口关闭时调用父窗口函数