iframe 父子页面传值

642 阅读1分钟

父子同域

使用共享变量

子页面使用window.top(如果只有一层iframe)或window.parent获得父页面的window对象

window.self 自身窗口,即window
window.parent 父窗口
window.top 顶层窗口
父有一个变量 window.a
子通过window.parent.a 也可获得改变量

父子跨域

父传给子,通过url传值

  const url = `/cems-carbon-modal/CarbonModel?token='xxx'&year='YYY'`;
  
  <div className='table-container'>
      <iframe
        src={url}
        frameBorder='0'
        title='document'
        style={{width: '100%', height: '100%'}}
      />
    </div>

postmessage

otherWindow.postMessage(message, targetOrigin, [transfer]);

参考链接:

postMessage可太有用了

window.postMessage