javascript - 处理父网页中的 iFrame 事件

标签 javascript events iframe event-handling dom-events

我对 iFrame 与父级或包含网页之间的通信有疑问。

我可以在 iFrame 中触发事件并在包含它的父级网页中处理它吗? iFrame 和父页面属于同一个子域。

最佳答案

使用评论中提供的 Sheikh Heera 链接,是的,您可以在 iframe 中触发事件并在父级中处理它。

var doc = iframe.contentDocument || iframe.contentWindow.document;
doc.getElementById("myDiv").addEventListener('click',function() {
    //doStuffHere
});

这是一个 fiddle :http://jsfiddle.net/9sfm9/


或者只是在 iframe 的 JavaScript 中调用 parent.doFunction(),假设 doFunction() 是父页面中的一个函数。示例:

父脚本:

var doFunction = function() {
    alert("I was triggered from an iframe");
}

iframe 脚本:

parent.doFunction();

这是一个 fiddle :http://jsfiddle.net/9sfm9/2/

关于javascript - 处理父网页中的 iFrame 事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18668541/

相关文章:

javascript - JS RegExp 不适用于字母字符

javascript - 在 React Native 中渲染数据之前进行异步调用

events - 我应该允许插件使我的应用程序崩溃吗?

javascript - JavaScript 中的函数式编程 - 事件

javascript - 如何在跨浏览器中读取剪贴板数据?

javascript - Ext JS 4.2.1 加载 Controller - 最佳实践

javascript - 如何通过 Javascript/JQuery (Ampersand.js/Angular) 用对象数组的对象填充 html 表

javascript - 如何在 CasperJS onWaitTimeout 事件处理程序中回显缺少的选择器?

javascript - Jquery - 拦截在 iframe 中点击的链接

javascript - 拼图 : different domain iframe needs to dynamically "overlap" parent content