创建iframe

  设置基础属性,并添加onload事件,捕获iframe的加载完成进行回调。

/**
 * @description: 配置及引入iframe
 * @return void
 */
setNewIframe() {
  let iframe = document.createElement('iframe')
  iframe.src = ''
  iframe.height = 500
  iframe.width = '100%'
  iframe.id = 'doc_iframe'

  //onload,iframe加载完成后的回调
  if (iframe.attachEvent) {
    iframe.attachEvent('onload', () => {
      this.setIframeRemove() //移除iframe不需要的元素
    })
  } else {
    iframe.onload = () => {
      this.setIframeRemove() //移除iframe不需要的元素
    }
  }
  document.getElementById('iframe-box')?.appendChild(iframe) //向指定dom插入iframe
}

移除iframe中不需要的元素

iframe元素的contentDocument属性可以获取到iframe中的dom元素。

/**
 * @description: 移除iframe不需要的元素
 * @return void
 */
getIframeDomRemove() {
  let iframe = document.getElementById('doc_iframe')

  let iframe_head =
    iframe?.contentDocument.getElementsByClassName('iframe_head')?.[0]
  let iframe_footer =
    iframe?.contentDocument.getElementsByClassName('iframe_footer')?.[0]

  iframe_head && iframe_head.style.display = 'none'
  iframe_footer && iframe_footer.style.display = 'none'
},

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐