今天需要在iframe内做一个弹窗,但使用弹窗组件的为子窗口,所以弹窗只在子窗口中显示掩膜层和定位,这样不符合需求。
后来晓勇哥指点,了解到一个以前一直没关注到的东西,每个窗口的全局变量,其实都存在对应窗口的window
对象下,因此只要取到某个窗口的window对象,就可以取得该窗口的全部全局变量,因此就有了父、子窗口之间的JS通信的方法。
子调用父
parent.xx // 父窗口的xx变量或方法
top.xx // 顶层窗口的xx变量或方法
父调用子
document.querySelector('iframe').contentWindow.xx // 父窗口的xx变量或方法