博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
iframe 父页面与子页面之间的方法的相互调用
阅读量:6597 次
发布时间:2019-06-24

本文共 1081 字,大约阅读时间需要 3 分钟。

同一个 origin 下,父页面可以通过 iframe.contentWindow 直接访问 iframe 的全局变量、DOM 树等,iframe 可以也通过 parent/top 对父页面做同样的事情。不同 origin 下,标准的方法是通过 .postMessage() 互相通信,不标准的方法是利用 location.hash 等奇技淫巧。协议、域名、端口号,共同决定一个 origin 。

父页面:

    Parent Page           

This is the Parent Page.

子页面:

    Child Page       

This is the Child Page.

最近在写一个vue项目,关于vue项目中对iframe的操作如下

父页面:

loaded() {    const app = this.$refs.iframe.contentWindow.app    console.log(app)    if (app && app.setContent) {        app.setContent(this.xml)      } else {        window._xml = this.xml     }}

子页面:

window.app = new Vue({ ... })

在console的app信息中,我们能看到一个完整的vue实例,里面可以直接操作iframe中的一些方法和数据

或者我们可以在iframe的vue项目中直接获取父页面的值

window.app = new Vue({    el: '#app',    data() {      return {        xml: null,      }    },    created: function () {      this.setContent(window.parent.window._xml);    },    methods: {      setContent: function (xml) {        this.xml = xml;      }    }  })

转载于:https://www.cnblogs.com/pengzhixin/p/7424898.html

你可能感兴趣的文章
oracle服务器和客户端字符集的查看和修改
查看>>
顶级的JavaScript框架、库、工具及其使用
查看>>
AYUI -AYUI风格的 超美 百度网盘8.0
查看>>
linux下php中文UTF-8转换Unicode方法和注意事项
查看>>
TensorFlow:tf.contrib.layers.xavier_initializer
查看>>
简明 Python 教程
查看>>
Photoshop操作指南
查看>>
用MPMoviePlayerController做在线音乐播放
查看>>
ASP.NET调用cmd命令提示符拒绝访问解决方案
查看>>
Leetcode: Construct Binary Tree from Preorder and Inorder Transversal
查看>>
嵌入式开发之字符叠加---gb2313 国标码,utf8 国际码,unicode 无码
查看>>
Java查找算法——二分查找
查看>>
如何构建微服务架构
查看>>
【前端笔记】彻底理解变量与函数的声明提升
查看>>
PHP工具箱:PHPStan —— PHP 静态代码分析工具
查看>>
iOS - 多链式动画框架 LSAnimator
查看>>
Android 反编译利器,jadx 的高级技巧
查看>>
Mycat 读写分离 数据库分库分表 中间件 安装部署
查看>>
二叉搜索树(递归实现)
查看>>
Spring Retry重试机制
查看>>