iframe和html交互

  1. iframe传递事件给html
// iframe事件监听
window.addEventListener('message', function (e) {
  // 刷新title
 if (data.type == 'ECM-DOCFLOW-TITLE-REFRESH' ) {
   
  })
})

// iframe发送事件
window.parent.postMessage(
   {
      type: 'ECM-DOCFLOW-TITLE-REFRESH',
        data: {
          type: 1,
       },
    },
  '*'
)
  1. html传递事件给iframe
// iframe接收事件
window.addEventListener('message', e => {
  if (e?.data?.type === 'ECM-DOCFLOW-CLOSE-RIGHT-PANEL') {
     //
  }
})

// html发送事件
var docflowIfarm = document.getElementById('DocflowIfarm') // 这个ifarm的id
docflowIfarm.contentWindow.postMessage(
  {
     type: 'ECM-DOCFLOW-CLOSE-RIGHT-PANEL',
     data: {
          closeRightPanel: false,
     },
  },
 '*'
)
  1. 刷新浏览器窗口方式
// iframe刷新
top!.location.href = '/api/auth/login?returnUrl=' + window.encodeURIComponent(top!.location.href)
// 普通刷新
window.location.href = `/api/auth/login?returnUrl=${encodeURIComponent(window.location.href.replace(location.origin, ''))}`
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容