iframe和html交互

2022-12-05  本文已影响0人  JackfengGG
  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, ''))}`
上一篇 下一篇

猜你喜欢

热点阅读